在.net MVC和EF中分页一个没有回发的大表

本文关键字:一个 MVC net EF 分页 | 更新日期: 2023-09-27 18:14:35

我有一个有几百万条记录的大表。

有一个MVC5解决方案,并使用PagedList。MVC与实体框架我有一个页面显示与排序和过滤器分页表。

但是每个过滤器和页面更改操作都需要回发。

有没有办法防止回发没有预加载整个表到内存?

在.net MVC和EF中分页一个没有回发的大表

既然你发表了评论,你就可以接受不同的解决方案,为什么不这样做呢?

1)假设这个大表在某个数据库中。更新过程以接受gridview中每页的行数以及gridview

中正在查看的当前页面索引作为参数。

2)使用上述参数更新过程,使其只返回用户所在的特定页面的行。还将行总数作为整数返回,这样您就可以计算gridview中需要多少页。考虑在会话中缓存它,这样您只需要查询一次总数。

这样做将使更新gridview非常快,因为该过程将只返回您需要在当前页面上显示的行。