我有如下财产:
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime ? EndDate { set; get; }
当我使用
时@Html.DisplayFor(modelItem => item.EndDate)
我得到如下结果:
17.07.2013
为什么会这样?
答案 0 :(得分:2)
有几种方法可以做到这一点。
或者:
格式化时提供CultureInfo对象:
@Html.DisplayFor(modelItem => item.EndDate.ToString("dd/MM/yyyy", CultureInfo.GetCulture("en-US")))
设置默认的CultureInfo对象:
Thread.CurrentThread.CurrentCulture = CultureInfo.GetCulture("en-US");
要转义斜杠,请使用单引号:
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd'/'MM'/'yyyy}")]
请注意,所有代码都以DateTime.ToString(string)或其中一个重载结束,因此您可以在此找到线索。