Asp.net mvc 4 MVC4中的日期时间格式-显示模板
我使用的是MVC4,在我的模型上有很多DateTime?类型的属性 我想我可以创建一个DisplayTemplate(在Shared\DisplayTemplates中),它可以按照我的意愿格式化我的日期 然而,这不起作用。它不会以指定的格式输出日期。任何帮助都将不胜感激 型号:Asp.net mvc 4 MVC4中的日期时间格式-显示模板,asp.net-mvc-4,razor,Asp.net Mvc 4,Razor,我使用的是MVC4,在我的模型上有很多DateTime?类型的属性 我想我可以创建一个DisplayTemplate(在Shared\DisplayTemplates中),它可以按照我的意愿格式化我的日期 然而,这不起作用。它不会以指定的格式输出日期。任何帮助都将不胜感激 型号: [Display(Name = "Date Submitted")] [DataType(DataType.DateTime)] public DateTime? DateSubmitted {
[Display(Name = "Date Submitted")]
[DataType(DataType.DateTime)]
public DateTime? DateSubmitted { get; set; }'
视图:
显示模板:
DateTime?:
@model DateTime?
@string.Format("{0:yyyy-MM-dd}", Model)
试着这样写:
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
您可以从(示例部分)了解更多信息
或者,如果您希望在视图中执行此操作,可以在MVC4中编写如下内容
@Html.TextBoxFor(x => x.DatePurchase, "{0:yyyy-MM-dd}")
和使用属性:
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
明白了
如果你注意到我的房子里有
[DataType(DataType.DateTime)]
在应该的地方:
[DataType(DataType.Date)]
Doh
感谢您的帮助。@Model.ToString(“yyyy-MM-dd”)……不过,输入时,FaceHank中会出现一个空值。我想在模板中保留所有格式,这就是为什么我不想注释每个日期属性。如果它真的爆炸了,至少我会知道它是一个工作的笔记-我正在使用这个伟大的链接
[DataType(DataType.Date)]