我在Azure模型中定义了一个属性,我想要一个默认值。我正在做的是这个
[DefaultValue(true)]
public Boolean SmsNotification { get; set; }
默认值仍为False。谁能告诉我如何解决这个问题?
答案 0 :(得分:3)
DefaultValue
属性不会导致初始值使用属性的值进行初始化。它不会在代码中设置属性的实际默认值,它仅用于设计。
所以:
[DefaultValue(true)]
public bool SmsNotification
{
get { return _smsNotification; }
set { _smsNotification = value; }
}
答案 1 :(得分:2)
DefaultValueAttribute
就是:一个属性。文档很清楚:
可视化设计人员可以使用默认值重置成员的值。代码生成器也可以使用默认值来确定是否应该为成员生成代码。
DefaultValueAttribute
不会导致成员使用属性的值自动初始化。您必须在代码中设置初始值。
我不知道是否可以更明确地说出来。
答案 2 :(得分:1)
您可以创建属性并将包装字段设置为true
:
public bool mSmsNotification = true;
public bool SmsNotification
{
get { return mSmsNotification; }
set { mSmsNotification = value; }
}