如何使用DisplayFormat属性格式化表格中的值?

时间:2018-09-27 12:30:43

标签: c# asp.net-mvc razor

我试图了解如何使用DisplayFormat属性在简单表中格式化某些值。 @Html.DisplayFor似乎仅支持我们试图直接格式化模型上某些内容的用例。但是这里的模型是ViewModels的枚举。

ViewModel:

class PersonViewModel
{
    public string Name { get; set; }

    [DisplayFormat(DataFormatString = @"{0:dd MMM yyyy}")]
    public DateTime? DateOfBirth { get; set; }

    [DisplayFormat(DataFormatString = @"{0:dd MMM yyyy}")]
    public DateTime? DateOfRegistration { get; set; }
}

视图:

@model IEnumerable<PersonViewModel>

<table>
@foreach (var person in Model)
{
  <tr>
    <td>@person.Name</td>
    <td>@person.DateOfBirth</td>
    <td>@person.DateOfRegistration</td>
    <td>@Html.DisplayFor(model => model.???) <!-- can't use this here -->
  </tr>
}
</table>

0 个答案:

没有答案