C# 自定义更新Telerik网格MVC

C# 自定义更新Telerik网格MVC,c#,asp.net-mvc,asp.net-mvc-5,telerik,kendo-grid,C#,Asp.net Mvc,Asp.net Mvc 5,Telerik,Kendo Grid,我想使用动态模型填充和更新剑道网格,因为该模型不存在。我可以填充网格,但当我尝试执行incell update时,我应用了函数,但结果是将其放入对象中,我无法从中获取数据。 我尝试使用动态模型进行自定义网格更新 观点: 我使用datatable填充网格 @model System.Data.DataTable @(Html.Kendo().Grid<dynamic>() .Name("Grid") .Columns(columns => { foreach (S

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

  • 观点:
我使用datatable填充网格

@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"))
)
@model System.Data.DataTable
@(Html.Kendo().Grid())
.名称(“网格”)
.列(列=>
{
foreach(Model.Columns中的System.Data.DataColumn列)
{
columns.bind(column.ColumnName);
}
Command(cmd=>cmd.Save());
})
.Pageable()
.Sortable()
.Editable(ed=>ed.Mode(GridEditMode.InCell))
.可过滤()
.Groupable()
.DataSource(DataSource=>DataSource
.Ajax()
.Model(Model=>
{
var id=Model.PrimaryKey[0]。ColumnName;
模型Id(Id);
foreach(Model.Columns中的System.Data.DataColumn列)
{
var field=model.field(column.ColumnName,column.DataType);
if(column.ColumnName==id)
{
字段,可编辑(假);
}
}                
})
.Read(Read=>Read.Action(“Read”,“Home”))
.Update(Update=>Update.Action(“更新”、“主页”))
)
)

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

     public ActionResult Update([DataSourceRequest] DataSourceRequest  request,  IEnumerable<dynamic>  models)
    {
           // TO-DO
    
        return Json(models.ToDataSourceResult(request, ModelState));
    
    
    }
    
    公共操作结果更新([DataSourceRequest]DataSourceRequest请求,IEnumerable模型)
    {
    //待办事项
    返回Json(models.ToDataSourceResult(request,ModelState));
    }