在Razor @ Html.EditorFor中使用文化格式化日期

时间:2013-10-09 21:58:38

标签: c# asp.net-mvc asp.net-mvc-4 razor

MVC 4,C#。

在我的剃刀视图中,我有:

@Html.EditorFor(model => model.ActionObject.StartDate)

我的模型中注释了以下内容:

[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public System.DateTime? StartDate { get; set; }

在视图中,使用日期选择器进行设置:

date

注意它是mm / dd / yyyy。如何根据用户动态更改此设置?用户可以根据自己的需要设置文化。

通常我可以这样做:

.ToString("d", culture)

动态设置文化的地方。但这对@ Html.Editfor不起作用。

1 个答案:

答案 0 :(得分:5)

datepicker 是Google Chrome中HTML 5 输入日期的原生代表。您无法更改此格式。显示格式来自他的操作系统中的用户文化/本地化配置。

如果您想根据需要对其进行格式化,请移除[DataType(DataType.Date)],呈现默认输入字段,然后使用 JQuery UI DatePicker 或其他提供更好的日期字段。