[英]Default value set for auto property is not working
我創建了一個如下所示的屬性,並且指定的默認值不起作用。
[DefaultValue(100)]
public int MyProperty
{
get;
set;
}
但該屬性不返回指定的默認值,而是返回“ O”
有人可以澄清一下嗎?
問候,
如果您使用的是c#6.0,則可以使用它來設置默認屬性值:
public int MyProperty { get; set; } = 100;
您正在使用DefaultValue
屬性。
DefaultValueAttribute不會導致成員使用該屬性的值自動初始化。 您必須在代碼中設置初始值。
https://msdn.microsoft.com/zh-CN/library/system.componentmodel.defaultvalueattribute(v=vs.110).aspx
在下面的C#5中,要為屬性提供默認值,必須在構造函數中進行設置。
public class MyClass
{
public MyClass() {
MyProperty = 100;
}
public int MyProperty {get; set;}
}
在C#版本6(及更高版本)中,您可以執行以下操作:
public int MyProperty { get; set; } = 100;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.