首页 > 解决方案 > 将 kendo 数据源(对象列表)发布到控制器

问题描述

我有一个剑道网格,在创建操作中,我想将另一个网格数据源的内容回发到剃须刀页面服务器。

@(Html.Kendo().Grid<EntityModel>()
        .Name("mainGrid")
        .DataSource(ds => ds.Ajax()
            .Read(r => r.Url("/Index?handler=ReadEntity")) 
            .Create(c => c.Url("/Index?handler=CreateEntity").Data("getData"))         
            .Model(m => m.Id(id => id.EntityID))
    )
)

function getData() {
    var otherModels = $("#otherGrid").data("kendoGrid").dataSource.data();
    var temp = $.extend(true, {}, kendo.antiForgeryTokens(), { otherModels: otherModels });
    return temp;
}

结果看起来像这样

温度


public JsonResult OnPostCreateEntity(List<OtherViewModel> otherModels, [DataSourceRequest] DataSourceRequest request, EntityViewModel entityModel) //otherModels is empty

这适用于简单对象(如整数)的集合,但在这种情况下,会引发异常:

无法读取未定义的属性“字段”

标签: kendo-gridrazor-pageskendo-datasource

解决方案


推荐阅读