mvc3默认值

Mat*_*ler 0 attributes model asp.net-mvc-3

如何定义模型属性的默认值?该属性DefaultValue不起作用:

    [DisplayName("Infos")]
    [DefaultValue("Test")]
    [DataType(DataType.MultilineText)]
    public object infos { get; set; }
Run Code Online (Sandbox Code Playgroud)

Eri*_*sch 7

DefaultValue不用于您的想法.

DefaultValueAttribute MSDN页面

您可以使用任何值创建DefaultValueAttribute.成员的默认值通常是其初始值.可视设计器可以使用默认值来重置成员的值.代码生成器也可以使用默认值来确定是否应该为成员生成代码.

注意:DefaultValueAttribute不会导致使用属性的值自动初始化成员.您必须在代码中设置初始值.

为什么不在模型的构造函数中设置默认值?

public class MyModel {
    public MyModel() { infos = "Test"; }

    [DisplayName("Infos")]
    [DataType(DataType.MultilineText)]
    public ojbect infos { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

编辑:

由于您似乎使用EF模型并且您想要设置默认值.您只需使用构造函数创建一个分部类.

public partial class MyEntity {
    public MyEntity() { infos = "Test"; }
}
Run Code Online (Sandbox Code Playgroud)