Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

C# related on Constructor and Property

I am building some tiny lib, and I have run into a problem. I want to provide a two-way solution, for example:

How can I accomplish this? I am getting exception thrown, because it expects something... Any example that will do is welcomed :) Thanks!

EDIT: I am executing something, initially my code is similar to this one:

 System.IO.DriveInfo d = new System.IO.DriveInfo("C:"); 

I want to achieve with my class the following:

Driver d = new Driver(); 
d.DriverLetter = "C:"; 

And still get the same results, I use ManagementObjectSearch, ManagementObjectCollection and some other System.Management classes.

like image 800
John Smith Avatar asked Dec 17 '25 19:12

John Smith


1 Answers

You need to provide both constructors:

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
    public string Country { get; set; }

    // Paramterless constructor  -  for   new Person();
    // All properties get their default values (string="" and int=0)
    public Person () { }

    // Parameterized constructor -  for   new Person("Joe", 16, "USA");
    public Person (string name, int age, string country)
    {
        Name = name;
        Age = age;
        Country = country;
    }
}

If you define a parameterized constructor, the default parameterless constructor is not included for you. Therefore you need to include it yourself.

From MSDN 10.10.4 Default constructors:

If a class contains no instance constructor declarations, a default instance constructor is automatically provided.

like image 141
Jonathon Reinhart Avatar answered Dec 20 '25 09:12

Jonathon Reinhart



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!