【发布时间】:2017-04-24 14:56:44
【问题描述】:
我有一个带有表单的 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 中添加了相同的设置。
【问题讨论】:
-
你的
DataType不应该是DataType.DateTime吗?将DataType.Date与DataFormatString结合使用似乎有点冲突。另外,我认为DataFormatString中不需要单引号。
标签: asp.net-mvc validation azure asp.net-mvc-5