문제

How do I initialize the member variables during declaration and create the getter/setter shorthand? Is it possible or do I have to use the constructor to assign the value?

For example I want to do something similarl to this

public class Money
{
   public int dollars = 200 {get; set;}
}

or

public int dollars = 200;

dollars 
{
    get;
    set;
}
도움이 되었습니까?

해결책

In C# 6 and later, you can initialize auto-implemented properties similarly to fields:

public string FirstName { get; set; } = "Jane";

Source: MSDN

다른 팁

Either

public class Money
{
    private int dollars = 200;
    public int Dollars
    {
        get { return dollars; }
        set { dollars = value; }
    }
}

or

public class Money
{
    public int Dollars { get; set; }

    public Money() 
    {
        Dollars = 200;
    }
}

Unfortunately there is currently no way to achieve this.

You must either assign the default value when you declare the properties backing field or assign the default value from the constructor if you are using an automatic property.

public class Money
{
  public int Dollars {get;set;}

  public Money()
  {
    Dollars = 200;
  }
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top