自定义更新Telerik网格MVC

时间:2015-11-13 09:26:41

标签: c# asp.net-mvc asp.net-mvc-5 telerik kendo-grid

我想使用动态模型填充和更新一个剑道网格,因为该模型不存在。我可以填充网格,但当我尝试执行incell更新时,我应用该函数,但结果将其放在对象中,我无法从中获取数据。 我尝试使用动态模型进行自定义网格更新。

  • 观点:

我使用数据表填充网格

@model System.Data.DataTable

 @(Html.Kendo().Grid<dynamic>()
.Name("Grid")
.Columns(columns =>
{
    foreach (System.Data.DataColumn column in Model.Columns)
    {
        columns.Bound(column.ColumnName);
    }
    columns.Command(cmd=>cmd.Save());
})
.Pageable()
.Sortable()
.Editable(ed=>ed.Mode(GridEditMode.InCell))
.Filterable()
.Groupable()
.DataSource(dataSource => dataSource
    .Ajax()        
    .Model(model =>
        {
            var id = Model.PrimaryKey[0].ColumnName;
            model.Id(id);
            foreach (System.Data.DataColumn column in Model.Columns)
            {
             var field = model.Field(column.ColumnName,column.DataType);
                if (column.ColumnName == id)
                {
                    field.Editable(false);
                }

            }                
        })

    .Read(read => read.Action("Read", "Home"))
    .Update(update => update.Action("Update", "Home"))
)

  • 控制器: 当我将更新列表作为“对象”无法访问数据时,问题是“未知模型”。

     public ActionResult Update([DataSourceRequest] DataSourceRequest  request,  IEnumerable<dynamic>  models)
    {
           // TO-DO
    
        return Json(models.ToDataSourceResult(request, ModelState));
    
    
    }
    

0 个答案:

没有答案