我试图使用来自Kendo的Dynamic Linq Helper库。网格上的参数映射函数没有正确的参数发送到控制器。
parameterMap选项有: {"取":10,"跳过":0,"页面":1," pageSize的" 10}
但根据示例,它应该具有take,skip,sort,filter,这不在parameterMap函数中或传递给服务器。
我跟随这里的例子
http://www.telerik.com/blogs/kendo-ui-open-sources-dynamic-linq-helpers
另外看了其他例子,我的网格设置与其他网格相同。
唯一的区别是,这是一个Web API单页面应用程序,而不是MVC。但是,这不应该对Grid类传递给它的parameterMap函数产生影响。
这里发生了什么?
$("#grid").kendoGrid({
dataSource: {
transport: {
read: {
url: "http://localhost/biahost/query/projectStatuses",
dataType: "application/json",
type: "POST",
contentType: "application/json; charset=utf-8"
//data:{}
},
parameterMap: function (options) {
debugger;
//options only contain {"take":10,"skip":0,"page":1,"pageSize":10}
return kendo.stringify(options);
}
},
schema: {
data: "Data",
total: "Total",
model: {
fields: {
NAME: { type: "string" },
CODE: { type: "string" },
STATUS: { type: "string" },
COMMENTS: { type: "string" },
INSERTS: { type: "string" },
UPDATES: { type: "string" },
TOTAL_UPDATES: { type: "string" },
LAST_ACTION_DATE: { type: "string" }
//UnitId: { type: "string" },
//UnitName: { type: "string" }
}
}
},
pageSize: 10,
serverPaging: true,
serverFiltering: true,
serverSorting: true
},
filterable: true,
sortable: true,
pageable: true,
columns: projectStatusColumns
});
var projectStatusColumns = [
{
field: 'NAME',
label: 'Res name',
hidden: true,
},
{
field: 'CODE',
label: 'Code'
},
{
field: 'STATUS',
label: 'Status'
},
{
field: 'COMMENTS',
label: 'Comments'
}
,
{
field: 'INSERTS',
label: 'Inserts'
}
,
{
field: 'UPDATES',
label: 'Updates'
}
,
{
field: 'TOTAL_UPDATES',
label: 'Total Updates'
}
,
{
field: 'LAST_ACTION_DATE',
label: 'Last Action Date'
}
];
答案 0 :(得分:0)
有同样的问题,所以我查了一下,我在这里。你只需要返回"选项"其中包含参数map,如果你将其字符串化,它将成为一个无法在url中定义的json对象。 希望我不会太晚!