Ответ 1
При использовании шаблона Display или Editor UIHint сообщит, какой шаблон использовать:
[UIHint("SomeTemplate")]
public class MyViewModel
{
public string SomeProperty { get; set; }
}
Если вы создадите шаблон отображения SomeTemplate.ascx(поскольку вы являетесь MVC2) в представлениях /Shared/DisplayTemplates или Views/{Controller}/DisplayTemplates, тогда он будет использовать этот шаблон, когда вы это сделаете:
@Html.DisplayForModel() // if Model is MyViewModel
или
@Html.DisplayFor(m => m.ModelProperty) // if ModelProperty is of type MyViewModel
изменить
Если вы хотите указать это на уровне свойства:
public class MyViewModel
{
[UIHint("Birthday")]
public DateTime DateOfBirth { get; set; }
}
Вы можете создать шаблон отображения/редактора с именем День рождения в папке DisplayTemplates или EditorTemplates в /Views/Shared или/Views/{Controller}. Затем, когда вы выполните:
@Html.DisplayFor(m => m.DateOfBirth)
или
@Html.EditorFor(m => m.DateOfBirth)
Он будет использовать шаблон, указанный в UIHint