将显示名称设置为另一个属性的值 - MVC3数据注释

时间:2011-03-10 11:21:17

标签: c# asp.net-mvc-3 data-annotations

是否可以将DisplayName数据属性设置为viewmodel中另一个属性的值?

public class FieldModel
{
    public string DisplayText { get; set; }
    public bool Mandatory { get; set; }
    public string DataType { get; set; }
    public string HelpText { get; set; }

    [DisplayName(this.DisplayText)]
    public string Value { get; set; }
}

1 个答案:

答案 0 :(得分:1)

我不这么认为,但您可以从DisplayNameAttribute派生并覆盖DisplayNameValue { get; }来取代您的类中的值。

(道歉,现在没时间编写代码示例)

看起来MVC将优先使用DisplayAttribute.GetName()而不是DisplayNameAttribute,但这是一个密封的类。