0

我在 asp mvc 4 中遇到了日期时间格式的问题。日期显示为 dd/mm/yyyy hh:mm:ss,我想要显示的只是 dd/mm/yy,因为它是 DOB。

我的模型如下...

[Display(Name = "Date of Birth")]
[DisplayFormat(DataFormatString = "{0:d}"]
public DateTime? DOB { get; set; }

而我的观点...

@Html.TextBoxFor(model => model.Patient.DOB, new { @class = "m-wrap span8", disabled = "disabled" })

我不希望用户能够编辑日期,因此 EditFor 不是一个选项,我尝试将标签 ApplyFormatInEditMode = true, 添加到属性中,同时将 TextBoxFor 替换为 EditFor ,这确实格式正确允许用户编辑!

我也试过 DOB.value.ToShortDateString(),不高兴。

任何提示或帮助表示赞赏...

4

1 回答 1

0

您正在使用短日期格式说明符,它提取当前线程文化的日期/时间格式(默认情况下通常是您的操作系统文化)。

如果你需要它是一个一致的格式,你需要修复它,即

[DisplayFormat(DataFormatString = "{0:dd/MM/yy}")]

DisplayFormat属性仅在您使用EditorFor而不是TextBoxFor.

于 2013-05-30T10:08:09.660 回答