MVC4中的日期时间格式 - DisplayTemplates

时间:2013-08-21 09:47:13

标签: asp.net-mvc-4 razor

我使用的是MVC4并且在我的模型上有许多属性类型为DateTime?。

我认为我可以创建一个DisplayTemplate(在Shared \ DisplayTemplates中),它将按照我的意愿格式化我的日期。

然而,这不起作用。它不以指定的格式输出日期。任何帮助将不胜感激..

型号:

    [Display(Name = "Date Submitted")]
    [DataType(DataType.DateTime)]
    public DateTime? DateSubmitted { get; set; }'

查看:

    @Html.DisplayFor(m => m.DateSubmitted)

显示模板:

    DateTime?:
    @model DateTime?
    @string.Format("{0:yyyy-MM-dd}", Model)

3 个答案:

答案 0 :(得分:2)

得到了!!!

如果您注意到我的财产中有

    [DataType(DataType.DateTime)]

应该在哪里:

     [DataType(DataType.Date)]

卫生署!!!

感谢您的帮助。

答案 1 :(得分:0)

尝试按如下方式编写:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]

您可以从here(示例部分)

了解有关此内容的更多信息

或者如果您希望在视图中执行此操作,可以在MVC4中将其写为以下内容

@Html.TextBoxFor(x => x.DatePurchase, "{0:yyyy-MM-dd}")

link

答案 2 :(得分:0)

使用DisplayFormat属性:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]