Помощник DisplayFor
отображает соответствующий шаблон отображения для данного типа.Вы должны использовать его, например, если вы хотите как-то персонализировать этот шаблон.Или со свойствами коллекции.При использовании со свойством коллекции соответствующий шаблон будет автоматически отображаться для каждого элемента коллекции.
Вот как это работает:
@Html.DisplayFor(x => x.SomeProperty)
отобразит шаблон по умолчанию для данного типа.Например, если вы украсили свойство модели представления некоторыми параметрами форматирования, оно будет учитывать следующие параметры:
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}")]
public DateTime SomeProperty { get; set; }
, а когда, по вашему мнению, вы используете помощник DisplayFor, оно будет отображать свойство с учетом этого формата.тогда как, если вы использовали просто @Model.SomeProperty
, это не будет соответствовать этому пользовательскому формату.
, но вы не знаете, когда его использовать?
Использовать его всегда, когда выхотите отобразить значение из вашей модели представления.Всегда используйте:
@Html.DisplayFor(x => x.SomeProperty)
вместо:
@Model.SomeProperty