如何制作剑道网格';s Read事件更有效率

本文关键字:Read 事件 有效率 何制作 网格 | 更新日期: 2023-09-27 17:59:43

当我捕获Kendo Grid的读取流量时,我可以看到它接收到的数据刚好够当前页面使用。因此,如果页面大小为5,则只传输5个项目。

考虑到这一点,在行动方法中过滤数据有什么意义吗?像使用takeskip Linq命令一样,还是ToDataSourceResult扩展方法会处理所有问题?

如何制作剑道网格';s Read事件更有效率

假设您的结果类型为IQueryable<T>ToDataSourceResult()将把执行推迟到数据库级别(假设您使用的是EntityFramework或类似的ORM),以负责分页、过滤和排序。

您可以在此处阅读更多信息:http://docs.telerik.com/kendo-ui/aspnet-mvc/helpers/grid/ajax-binding(在步骤10之后,此特定功能有一个黄色标注)

我认为最好将LINQ选择的数据限制在网格包含的列中,并让它返回IQueryable。一般来说,除了呼叫ToDataSourceResult之外,您不需要做任何其他事情。它处理服务器端的过滤、分页和排序。

如果你想做除此之外的任何事情,你可以扩展它

参见KendoUI:理解ToDataSourceResult