如何为C#Auto-Property提供默认值?

如何为C#Auto-Property提供默认值?我要么使用构造函数,要么还原为旧语法.

 使用构造函数:

class Person 
{
    public Person()
    {
        Name = "Default Name";
    }
    public string Name { get; set; }
}

使用普通属性语法(使用默认值)

private string name = "Default Name";
public string Name 
{
    get 
    {
        return name;
    }
    set
    {
        name = value;
    }
}

有没有更好的办法?

最佳答案
在C#5和更早版本中,要为自动实现的属性提供默认值,您必须在构造函数中执行此操作.

自C#6.0起包含自动属性初始值设定项的功能.语法是:

public int X { get; set; } = x; // C# 6 or higher

DefaultValueAttribute仅适用于vs设计器.它不会将属性初始化为该值.

DefaultValue attribute is not working with my Auto Property

转载注明原文:如何为C#Auto-Property提供默认值? - 代码日志