我这样创建网格:
Html.Telerik().Grid<myapp.Date>("dates")
.Name("MyGrid")
.Pageable(paging => paging.PageSize(10))
.Sortable()
.Filterable()
.Groupable()
.DataKeys(keys => keys.Add(c => c.id))
.DataBinding(dataBinding =>
{
dataBinding.Ajax()
.Select("_SelectAjaxEditing", "Dates")
.Insert("_InsertAjaxEditing", "Dates")
.Update("_SaveAjaxEditing", "Dates")
.Delete("_DeleteAjaxEditing", "Dates");
})
.ToolBar(commands => commands.Insert())
.Columns(columns =>
{
columns.Bound(o => o.name);
columns.Bound(o => o.date1);
columns.Command(commands =>
{
commands.Edit().ButtonType(GridButtonType.Text);
commands.Delete().ButtonType(GridButtonType.Text);
});
})
.Editable(editing => editing.Mode(GridEditMode.InLine))
.Render();
%>
它运行得很好,但如果我将GridEditMode更改为InLine以外的任何其他模式,我会得到以下错误:
传递到字典中的模型项的类型为"myapp.Date",但这本字典需要类型为的模型项'System.Nullable `1[System.DateTime]'.
有一个系统。网格中的DateTime字段,这是导致此错误的原因吗?
我想这是因为您作为模型传递的日期不可为null,而建模所需的日期可为null。请在将模型类型更改为"DATETIME?"后尝试此操作。
注意:如果您正在声明属性,请将其声明为DateTime,因为您的字段可以为null。
感谢
问候,
Dhaval Shukla