【发布时间】:2015-11-17 21:47:40
【问题描述】:
我刚刚开始接触 ASP.NET MVC 5 和 Kendo。使用现有的 MS 教程,我创建了一个 ASP.NET 项目,该项目大致完成了我想要的(来自不同用户的一些数据输入)。现在我正在尝试将 Kendo UI 添加到项目中,但我不确定如何将现有的 Razor cshtml 转换为正确使用 Kendo。
例如,我有:
@Html.EditorFor(model => model.someDate, new { htmlAttributes = new { @class = "form-control" }})
我尝试将其更改为:
@Html.Kendo().DatePickerFor( model => model.someDate).Name( "someDate" ).HtmlAttributes( new { style = "width:100%" } )
这很有效,因为我看到了 Kendo UI 日期选择器。但是如果我用它来选择一个日期并保存数据,我会得到这个异常:
异常详细信息:System.Data.SqlClient.SqlException:转换 将 datetime2 数据类型转换为 datetime 数据类型会导致 超出范围的值。声明已终止。
我以为我可以直接使用剑道控件,但显然不行。是否有可能让它像原始的 Html.EditorFor 代码一样工作?如果有,怎么做?
【问题讨论】:
-
在 POST 方法中检查
someDate的值是什么。我假设绑定失败并且它的1/1/0001? -
嗨,斯蒂芬。谢谢!我发现了问题。我在 Name() 部分有错字,所以它没有将值存储回正确的字段中。
-
不要使用
.Name()。检查您生成的 html -name属性是自动添加的(不要尝试覆盖它)
标签: asp.net asp.net-mvc razor kendo-ui