在Asp.NET MVC中以dd / mm / yyyy格式显示date时间值

Asp.NET MVCHTML Hepler方法的帮助下,可以以dd / mm / yyyy格式显示DateTime值吗? 我试图通过使用@Html.LabelFor一些格式来做到这一点,并添加一些注释到像下面的相关属性,但它没有任何意义。 任何帮助解决这个问题,将不胜感激。

模型:

 [DataType(DataType.Date)] [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)] public Nullable<System.DateTime> RegistrationDate { get; set; } 

所有你需要做的是在HTML帮助器中input你想要的格式。 即。

 @Html.TextBoxFor(m => m.ResgistrationhaseDate, "{0:dd/MM/yyyy}") 

你不需要在模型类中提供date格式..它会工作得很好..

经过几个小时的search,我只用几行代码就解决了这个问题

你的模型

  [Required(ErrorMessage = "Enter the issued date.")] [DataType(DataType.Date)] public DateTime IssueDate { get; set; } 

剃刀页

  @Html.TextBoxFor(model => model.IssueDate) @Html.ValidationMessageFor(model => model.IssueDate) 

Jquery DatePicker

 <script type="text/javascript"> $(document).ready(function () { $('#IssueDate').datepicker({ dateFormat: "dd/mm/yy", showStatus: true, showWeeks: true, currentText: 'Now', autoSize: true, gotoCurrent: true, showAnim: 'blind', highlightWeek: true }); }); </script> 

Webconfig文件

  <system.web> <globalization uiCulture="en" culture="en-GB"/> </system.web> 

现在您的文本框将接受“dd / MM / yyyy”格式。

我知道这是一个老问题,但作为参考,格式化date没有任何数据注释或任何其他设置一个非常简单的方法如下:

 @Html.TextBoxFor(m => m.StartDate, new { @Value = Model.StartDate.ToString("dd-MMM-yyyy") }) 

上面的格式当然可以改成任何东西。

或者只是在你的View(Razor页面)

 @item.ResgistrationhaseDate.ToString(string.Format("dd/MM/yyyy")) 

我build议不要在模型类中添加date格式

你需要使用html助手,而且你不需要在模型类中提供date格式。 例如:

 @Html.TextBoxFor(m => m.ResgistrationhaseDate, "{0:dd/MM/yyyy}") 

由于问题是“显示”:

@ Html.ValueFor(model => model.RegistrationDate,“{0:dd / MM / yyyy}”)