我正在使用ASP.NET App而且我遇到了日期时间问题。
当我选择行军的第31个日期时,在控制器中进入模型是01/01/0001,但是当我选择3月1日时没有错误。
我想使用这种格式:日/月/年,我认为该应用的DateTime默认格式是月/日/年,这就是为什么,所以我该如何使这个工作?
这是我做的:
型号:
public DateTime dateAudit { get; set; }
查看:
<input class="form-controlform-control datefield" id="dateAudit" name="dateAudit" value="@Model.dateAudit.ToString("dd/MM/yyyy")" />
$(".datefield").datepicker({
numberOfMonths: 1,
dateFormat: 'dd/mm/yy',
showTimePicker: false
});
控制器:
[HttpPost]
public ActionResult Create(AuditViewModel model)
{...}
配置文件:
<globalization uiCulture="fr-FR" />
01/01/0001在提交表单时进入了model.date属性。
为了获得正确的约会,最佳解决方案应该是什么? 设定全球文化以使用那种日期?别的什么? 提前致谢
答案 0 :(得分:0)
您可以将以下属性添加到日期属性:
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime dateAudit { get; set; }
编辑:
我刚刚注意到可能会增加你面临的问题:
$(".datefield").datepicker({
numberOfMonths: 1,
dateFormat: 'dd/mm/yy',**
showTimePicker: false
});
dateFormat: 'dd/mm/yy'
理想情况下应为dateFormat: 'dd/mm/yyyy'
。
希望这有帮助。
答案 1 :(得分:-1)
将mm更改为MM,因为它需要几分钟而不是几个月。
$(".datefield").datepicker({
numberOfMonths: 1,
dateFormat: 'dd/MM/yy',
showTimePicker: false
});