我有一个(Of MyCustomClass)类型的System.Generic.Collections.List对象。
给定整数变量pagesize和pagenumber,我如何才能仅查询MyCustomClass对象的任何一页?
发布于 2008-08-21 23:02:29
如果您的linq-query包含您想要显示的所有行,则可以使用以下代码:
var pageNum = 3;
var pageSize = 20;
query = query.Skip((pageNum - 1) * pageSize).Take(pageSize);您还可以在对象上创建一个扩展方法,以便能够编写
query.Page(2,50)获取第2页的前50条记录。如果这是您想要的,信息在solid code blog.上
发布于 2009-01-14 11:57:00
嗨,有一个叫做PagedList的邪恶的东西,它是我在看Rob Conery的屏幕演员时得到的。
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 to entities上运行良好。使用Linq to entities,您必须先执行Orderby,然后才能使用Skip和Take。
https://stackoverflow.com/questions/21184
复制相似问题