公共属性的默认值

时间:2010-06-02 02:46:17

标签: c# .net

我在某个班级有公共财产。我希望这个属性的默认值为-1而没有像_MyField这样的私有变量(因为这个类中有太多属性,我不会逐个添加它们)。

public int MyProperty { get; set; }
我认为

[DefaultValueAttribute]不能解决这个问题。有任何想法吗?感谢。

更新@ 2015年8月现在我们有C#6!

public int MyProperty { get; set; } = 100;

public string EasyToUse { get; } = "YES!";

2 个答案:

答案 0 :(得分:3)

您基本上有两个选项 - 您可以在对象的构造函数中设置属性,或使用私有字段。

就个人而言,我觉得构造函数是最好的选择,因为对于阅读代码的人来说,很明显你的意图是什么样的新课程。

[DefaultValue]是一个用于可视化设计器功能的属性,对您的类逻辑没有任何影响。

答案 1 :(得分:0)

只需在对象的构造函数中设置this.MyAttr = -1赋值。