我有一个表格的Asp Mvc 5应用程序。该表单有一个日期和文本字段。时间格式:“dd / MM / yyyy HH:mm”。当我在本地运行它时,验证工作正常。但是,当我将其部署到Azure时,它会失败。
该视野在视图中生成:
@Html.TextBoxFor(m => m.DateField, "{0:dd'/'MM'/'yyyy HH:mm}", htmlAttributes: new { @class = "form-control"})
ViewModel的注释如下所示:
[Required(ErrorMessage = "...", AllowEmptyStrings = false)]
[DataType(DataType.Date), DisplayFormat(DataFormatString = "{0:dd'/'MM'/'yyyy HH:mm}", ApplyFormatInEditMode = true)]
[DisplayName("Date & time")]
public DateTime DateField { get; set; }
另外,在主web.config中我有:
<system.web>
<globalization culture="pl-PL" uiCulture="pl-PL" />
</system.web>
由于我的表单位于区域内,我还在特定区域的web.config中添加了相同的设置。
答案 0 :(得分:-1)
我有同样的问题。尽管格式清楚地表示dd / MM,即第一天和第一天,它仍然使用月份然后是第一天。为了解决这个问题,我使用了下面那种效果很好的格式。
yyyy / MM / dd HH:mm
此外,您还可以使用datetime-local
控件来渲染包含时间药水的日历。请注意,某些仅包含Chrome的浏览器支持此控件。
<input type="datetime-local">