3

我有一个具有 DateTime 属性的模型:

[DisplayName("Updated")]
public DateTime lastUpdatedDate { get; set; }

目前,我认为我错误地处理了视图中日期时间的格式。

<tr>
    <td>@Html.LabelFor(m=>m.lastUpdatedDate)</td>
    <td>@Html.Label(Model.lastUpdatedDate.ToLongDateString())</td>
</tr>

我确信这是错误的。首先,我应该在模型中进行格式化,然后返回字符串(在用于显示日期的模型中 - 更新模型需要控件的 DateTime 类型)?但它变得复杂 - 时区。我是否应该在获取的模型中操纵日期时间的值(基于用户在注册时选择的时区)?.. 事物?(叫什么?吸气剂??呵呵)。

在我学习 MVC 的同时,试图让我的代码易于使用。

4

1 回答 1

1

如果你想优雅地处理时区,我建议你阅读这个答案。为了简单地格式化模型中的 DateTime 属性,请使用 [DisplayFormat] 属性对其进行装饰:

[DisplayName("Updated")]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime lastUpdatedDate { get; set; }

在您看来:

@Html.DisplayFor(x => x.lastUpdatedDate)
于 2012-09-11T11:19:46.230 回答