如何向自动属性添加初始化

时间:2015-10-21 10:06:07

标签: c#

我习惯写这样的课程:

public class foo {
  private string mBar = "bar";
  public string Bar {
    get { return mBar; }
    set { mBar = value; }
  }
  //... other methods, no constructor ...
}

将Bar转换为自动属性似乎既方便又简洁,但是如何在不添加构造函数并将初始化放在那里的情况下保留初始化?

public class foo2theRevengeOfFoo {
  //private string mBar = "bar";
  public string Bar { get; set; }
  //... other methods, no constructor ...
  //behavior has changed.
}

你可以看到添加一个构造函数并不符合我应该从自动属性中获得的省力。

1 个答案:

答案 0 :(得分:1)

MS Link解释了:

  

现在启用了自动属性初始值设定项,类似于字段

上的初始值设定项
from django.db.models import Count

posts = Post.objects.annotate(num_comments=Count('comment')).order_by('-num_comments')