Я попытался украсить класс POCO с помощью [Display(Name="First Name")]
Как следует ...
public int Id { get; set; }
[Display(Name = "First Name")]
public string FirstName { get; set; }
[Display(Name = "Last Name")]
public string LastName { get; set; }
А также с помощью атрибута [DisplayName("First Name")]
.
Независимо от того, что по умолчанию "Список"«Сгенерированное представление (используя диалоговое окно« Добавить контроллер ») всегда создает таблицу с именами свойств (например,« FirstName ») в качестве текста заголовка без учета значений атрибутов.Представление создания отлично работает с атрибутом [Display(Name=...)]
.
Шаблон List.tt
T4 на самом деле имеет:
<th>
<#= property.AssociationName #>
</th>
, тогда как шаблон Create.tt
имеет:
<#
if (property.IsForeignKey) {
#>
@Html.LabelFor(model => model.<#= property.Name #>, "<#= property.AssociationName #>")
<#
} else {
#>
@Html.LabelFor(model => model.<#= property.Name #>)
<#
}
#>
Что еще нужно сделать, чтобы стандартные леса использовали атрибут Display
?Или я должен отредактировать шаблон List.tt
T4, чтобы использовать что-то кроме <# property.AssociationName #>
?
Конечно, я могу редактировать сгенерированный вид.Но мне нравится «исправлять» это в самом шаблоне, чтобы ВСЕ сгенерированные представления были правильными без изменений.
Заранее спасибо за ответы.