一尘不染

什么时候应该在MVC中使用Html.Displayfor

c#

我是MVC的新手,知道如何使用Html.Displayfor(),但是不知道何时使用它?

任何的想法?


阅读 610

收藏
2020-05-19

共1个答案

一尘不染

DisplayFor助手呈现给定类型对应的显示模板。例如,您应该将其与集合属性一起使用,或者如果您想以某种方式个性化此模板。与collection属性一起使用时,将自动为collection的每个元素呈现相应的模板。

运作方式如下:

@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
2020-05-19