如何配置 Kendo UI 网格,使其仅针对特定(显示)字段发出请求?
在我的例子中,一个 Kendo UI 网格绑定到一个 OData 服务。该服务公开了一个包含许多(200 多个)字段的表。该应用程序允许用户配置网格的显示字段集,设置初始过滤器和排序参数。该应用程序配置网格,然后关闭并查询 OData 服务。
网格 kendo.Data.DataSource 定义为:
var gridDataSource = new kendo.data.DataSource({
type: "odata",
transport: {
read: {
url: "@Url.Content(dynDataSource.Url)",
contentType: "application/json; charset=utf-8",
type: "GET",
dataType: "json"
}
},
pageSize: @Model.MaxPageSize,
serverPaging: true,
serverFiltering: true,
serverSorting: true,
filter: ...
}
这是 Grid 发出的示例请求(由 Firebug 捕获):
http://localhost:22411/Data/Comp?%24inlinecount=allpages&%24top=1000&%24filter=DistrictCode+eq+%27460800%27
这会返回表的所有字段,这是一个问题。需要通过仅选择必填字段来限制字段,其请求如下所示:
http://localhost:22411/Data/Comp?%24inlinecount=allpages&%24top=1000&%24filter=DistrictCode+eq+%27460800%27&%24select=DistrictCode,DistrictName,DistrictNumber
同样,如何配置网格以实现这一点?
我意识到源代码可用于 Kendo UI,但我目前仍在试用版中,其中不包含源代码。