分页策略

时间:2013-11-08 23:50:52

标签: asp.net-mvc model-view-controller

我想在我的视图中添加分页。我查看了PagedList(Nuget包),它真的很棒。我遇到的问题是,它需要从数据库中提取所有记录。正如您所看到的,如果有数百万行,它将不会非常有效。

是否有任何Nuget Paging包不需要您提取所有数据库记录? 我是否必须编写自己的自定义分页?

2 个答案:

答案 0 :(得分:1)

快速搜索PagedList github,我实际上发现了作者的这句话,它专门回答了你的问题:

  

嗨,我是PagedList库的创建者。如果你正在使用带有IQueryable的PagedList(通过实体框架,Linq2Sql,NHibernate.Linq等),那么库肯定不会加载整个列表以获得另一个页面。

     

如果由于某种原因,你不能使用IQueryable,那么有一个StaticPagedList类,它允许你生成你自己的IPagedList实例而不迭代整个集合:

     

https://github.com/troygoode/pagedlist#example-2-manual-paging

取自:http://forums.asp.net/t/1819810.aspx

答案 1 :(得分:0)

根据我的经验,我总是创建自己的自定义分页。它总是更好(在灵活性方面)创造我自己的。有一个插件可以帮助你,如果你不想走那条路。我没有使用它,但我看过这个例子,它可能是适合你的东西。

Ajax Paging With Bootstrap In MVC 4

我建议下载他们提供的示例项目,应该非常简单。