我一直在研究这个没有太多运气的日子。我走了很多路,但似乎无法找到有效的解决方案。任何帮助将不胜感激。
我有一个用于CRUD的Kendo MVC网格
@(Html.Kendo().Grid<Games.Models.Game>()
.Name("Grid")
.Columns(columns => {
columns.Bound(p => p.GameName).Width(100);
columns.Bound(p => p.Publisher).Width(75);
columns.Bound(p => p.MaxPlayers).Width(75);
columns.Bound(p => p.DateAdded).Width(100).Format("{0:MM/dd/yyyy}");
当我尝试编辑DateAdded字段时,它会将日期从格式良好的日期05/01/2003更改为5月1日17:00:00 CDT 2003,并在您尝试更新数据时抛出错误(我输入的任何数据都会转换为日,月,时间,时区年份格式。
网格抛出“字段DateAdded必须是日期错误”。
我尝试过使用Kendo Date Picker编辑器模板,但数据没有更新到我的模型中。
columns.Bound(p => p.DateAdded).Width(100).Format("{0:MM/dd/yyyy}").EditorTemplateName("DateTime");
编辑模板:
@(Html.Kendo().DatePicker()
.Name("datepicker")
.Format("M/d/yyyy")
)
知道我做错了什么吗?如果我可以更新内联日期,我可以跳过使用日期选择器,但我无法使用任何一种方法。
答案 0 :(得分:1)
日期时间根据客户端(剑道文化)上指定的文化进行验证。请记住,编辑器的验证和格式是两回事。您应该将文化更改为日期/月份顺序是您用作格式的文化。类似案例here。
有关剑道文化及其更改方法的更多信息,请参阅documentation。