我使用了
GridView
分页,高效分页。这意味着只需从数据库中提取所需的记录。 GridView
的高效分页仅适用于标记。当你使用代码隐藏来控制分页机制时,它就不再有效了。
是否有任何 ASP.NET 控件支持通过代码隐藏进行高效分页?
如果您想完全控制数据访问,您应该计划编写自己的存储过程,该存储过程接受其他参数(通常是过滤条件)、PageSize 和 PageIndex。
那么无论您在用户界面中使用什么组件,在调用数据库时都需要指定页面索引和页面大小。
我相信 LINQ to SQL 和 MS Entity Framework 也能够以某种方式为您做到这一点,重点不仅在于 UI 控件,而且在于从数据库到 UI 的整个链条,通过业务逻辑和服务层(如果存在)。
像 Telerik 和 DevXpress 这样的组件供应商有自己的网格控件,其中一些逻辑已经实现,查看此链接并向下滚动到最后,他们显示了如何以分页方式从数据库加载数据的图表,您可以了解什么?左边看到的是经典的网格控件,它加载所有数据并且只在用户界面中显示一页,右边你看到你正在寻找的内容和不同的细节(我不喜欢必须使用 XPO 的限制例如,从 DevXpress 作为 ORM),您也应该能够使用不同的组件和技术(如 LINQ、EF...)来完成此操作
http://www.devexpress.com/Products/NET/Controls/ASP/Grid/server-mode.xml
我找到了一个控件:
DataGrid
。它按我想要的方式工作。