Asp.net mvc 是否可以为模型中的字段指定标签?
我想为模型中的某个字段指定一个“标签”,并在应用程序中的任何地方使用它Asp.net mvc 是否可以为模型中的字段指定标签?,asp.net-mvc,Asp.net Mvc,我想为模型中的某个字段指定一个“标签”,并在应用程序中的任何地方使用它 <div class="editor-field"> <%: Html.TextBoxFor(model => model.surname) %> <%: Html.ValidationMessageFor(model => model.surname) %> </div> 型号(姓氏)%> 型号(姓氏)%> 在此,我想补充如下内容: <%: Htm
<div class="editor-field">
<%: Html.TextBoxFor(model => model.surname) %>
<%: Html.ValidationMessageFor(model => model.surname) %>
</div>
型号(姓氏)%>
型号(姓氏)%>
在此,我想补充如下内容:
<%: Html.LabelFor(model => model.surname) %>
model.姓氏)%>
但labelFor已经存在并写出了“姓氏”。但是我想指定它应该显示什么,比如“您的姓氏”。我确信这很简单=/在模型中的属性上使用
显示
或显示名称
属性
[Display(Name = "Your surname")]
public string surname { get; set; }
或
是的,您可以通过将DisplayAttribute(来自System.ComponentModel.DataAnnotations命名空间)添加到属性来实现这一点:类似以下内容:
[Display(Name = "Your surname")]
public string surname { get; set; }
因为我的项目是自动生成的,所以我不能(不应该)更改designer.cs文件。
因此,我创建了一个元数据类,如前所述
如果我加上这个,它会说,
姓氏
已经存在,我会得到29个错误。我还可以在哪里添加它?我正在使用与NerdDinner相同的设置。我发现它已经在Test.designer.cs
中声明。我应该在这里添加[Display(Name=“Your Name”)]
吗?我以为你不应该编辑设计器文件?我发现它已经在Test.designer.cs
中声明了。我应该在这里添加[Display(Name=“Your Name”)]
吗?我以为你不应该编辑设计器文件?
[Display(Name = "Your surname")]
public string surname { get; set; }
// Override the designer file and set a display name for each attribute
[MetadataType(typeof(Person_Metadata))]
public partial class Person
{
}
public class Person_Metadata
{
[DisplayName("Your surname")]
public object surname { get; set; }
}