C# 类模型-设置默认值

C# 类模型-设置默认值,c#,C#,定义默认值时,它们之间的区别是什么 [DefaultValue("member")] public string Role { get; set; } 及 第一个属性对于元编程非常有用。例如,如果有人清除输入,您可能希望记住默认值。这与C语言本身无关。它不修改角色的值 第二个属性实际上将属性的值设置为内存中的“member”。第一个属性对于元编程非常有用。例如,如果有人清除输入,您可能希望记住默认值。这与C语言本身无关。它不修改角色的值 第二个实际上是将属性的值设置为内存中的“member”。

定义默认值时,它们之间的区别是什么

[DefaultValue("member")]
public string Role { get; set; }


第一个属性对于元编程非常有用。例如,如果有人清除输入,您可能希望记住默认值。这与C语言本身无关。它不修改
角色的值


第二个属性实际上将属性的值设置为内存中的“member”。

第一个属性对于元编程非常有用。例如,如果有人清除输入,您可能希望记住默认值。这与C语言本身无关。它不修改
角色的值

第二个实际上是将属性的值设置为内存中的“member”。

From:

DefaultValueAttribute不会导致使用该属性的值自动初始化成员。必须在代码中设置初始值

换句话说,第一个示例帮助工具(如Windows窗体设计器)了解属性的预期默认值。但它在运行时不执行任何操作

如果希望在运行时为属性指定默认值,则必须自己执行,如第二个示例所示。

来源:

DefaultValueAttribute不会导致使用该属性的值自动初始化成员。必须在代码中设置初始值

换句话说,第一个示例帮助工具(如Windows窗体设计器)了解属性的预期默认值。但它在运行时不执行任何操作

如果希望在运行时为属性指定默认值,则必须自己执行,如第二个示例所示

public string Role { get; set; } = "member";