Asp.net mvc 2 是否使用Html.LabelFor显示人类可读的标签?

Asp.net mvc 2 是否使用Html.LabelFor显示人类可读的标签?,asp.net-mvc-2,Asp.net Mvc 2,我正在使用ASP.NET MVC 2,我正在努力理解如何使用Html.labelforhelpet方法 假设我有一个模型: public class Person { public string FirstName { get; set; } } 在我看来,如果我写: <%: Html.LabelFor(model => model.FirstName) %> model.FirstName)%%> 我在页面上看到的是“名字”。但我不想这样,因为它不方便用户使用。我希

我正在使用ASP.NET MVC 2,我正在努力理解如何使用Html.labelforhelpet方法

假设我有一个模型:

public class Person
{
  public string FirstName { get; set; }
}
在我看来,如果我写:

<%: Html.LabelFor(model => model.FirstName) %>
model.FirstName)%%>
我在页面上看到的是“名字”。但我不想这样,因为它不方便用户使用。我希望它是“名字”

我如何做到这一点

谢谢。

就像这样:

public class Person
{
  [DisplayName("First Name")]
  public string FirstName { get; set; }
}

您还应该查看一些非常有用的验证属性,如
[Range(01100)]
[StringLength(100)]
[Required]
等等。

<%= Html.LabelFor(model => model.FirstName) %>
model.FirstName)%%>

内森·泰勒的答案是最简单的。另一个答案是创建一个自定义的
DataAnnotationsModelMetadataProvider
,它获取属性名并使用一些字符串帮助器将其拆分。曼宁的ASP.NET MVC2(第二版)在第15章中有一个例子