我有一个System.Generic.Collections.List(MyCustomClass)类型的对象。如何使用Linq来分页泛型集合?
给定整数变量pagesize和pagenumber,我怎样才能查询MyCustomClass对象的任何单个页面?
我有一个System.Generic.Collections.List(MyCustomClass)类型的对象。如何使用Linq来分页泛型集合?
给定整数变量pagesize和pagenumber,我怎样才能查询MyCustomClass对象的任何单个页面?
如果你有你的LINQ查询包含所有要显示的行,该代码可用于:
var pageNum = 3;
var pageSize = 20;
query = query.Skip((pageNum - 1) * pageSize).Take(pageSize);
您还可以扩展方法的对象要能写
query.Page(2,50)
拿到第50条记录第2页的如果是想你想要的信息是关于solid code blog.
嗨有一个叫PagedList缺德的事我在观看Rob Conery Screen Cast时得到了。
http://blog.wekeroad.com/2007/12/10/aspnet-mvc-pagedlistt/
它具有所有跳过并以内置的东西。
所有你要做的就是调用
var query = from item in DB.Table
where item.Field == 1
orderby item.Field2
select item;
PagedList<MyType> pagedList = query.ToPagedList(pageIndex, pageSize);
希望它可以帮助..现在我用它和它的工作原理对于linq实体来说没问题。使用Linq实体,您必须先执行Orderby,然后才能使用“跳过并采取”。
我相信你有Take和Skip功能来做到这一点。 – 2008-08-21 21:05:46