Kendo UI和ASP.NET MVC:服务器端过滤

时间:2018-11-24 18:18:41

标签: c# asp.net kendo-ui pagination telerik

我有一个Kendo网格,我想要对其进行服务器端过滤,分页和排序。

该网格是通过使用Kendo的jQuery版本的普通JavaScript实现的,因此我无权访问Kendo C#HTML Helpers。数据源看起来像这样:

new kendo.data.DataSource({
  transport: {
    read: {
     url: '/MyEndpoint',
     dataType: 'json',
     type: 'get'
    },
  },
  schema: {
   data: 'data',
   total: 'total'
  },
  serverPaging: true,
  serverFiltering: true,
  serverSorting: true
 });

它使用以下结构发送请求:

/Endpoint/?take=20&skip=0&page=1&pageSize=20&filter%5Bfilters%5D%5B0%5D%5Bfield%5D=Name&filter%5Bfilters%5D%5B0%5D%5Boperator%5D=eq&filter%5Bfilters%5D%5B0%5D%5Bvalue%5D=test&filter%5Blogic%5D=and

我的控制器的外观如Kendo文档中所述:

public IHttpActionResult MyControler([DataSourceRequest] DataSourceRequest req)
{
   return Json(SomeQuery.ToDataSourceResult(req));
}

问题是控制器似乎无法将url参数与控制器匹配。调用控制器动作时,req始终为null。使用Kendo的jQuery版本甚至可以做到这一点吗?我在文档中找不到任何不使用C#HTML帮助器来实现服务器端网格过滤/分页/排序的示例。

0 个答案:

没有答案