Esp*_*spo 30
如果您的linq查询包含要显示的所有行,则可以使用以下代码:
var pageNum = 3;
var pageSize = 20;
query = query.Skip((pageNum - 1) * pageSize).Take(pageSize);
Run Code Online (Sandbox Code Playgroud)
您还可以在对象上创建一个能够编写的扩展方法
query.Page(2,50)
Run Code Online (Sandbox Code Playgroud)
获取第2页的前50条记录.如果您想要,则信息在固体代码博客上.
嗨有一个叫做PagedList的邪恶的东西是我在观看Rob Conery Screen Cast时得到的.
http://blog.wekeroad.com/2007/12/10/aspnet-mvc-pagedlistt/
它内置了所有Skip和Take内容.
你所做的只是打电话
var query = from item in DB.Table
where item.Field == 1
orderby item.Field2
select item;
PagedList<MyType> pagedList = query.ToPagedList(pageIndex, pageSize);
Run Code Online (Sandbox Code Playgroud)
希望它有所帮助..我现在正在使用它,它适用于linq到实体.使用Linq to实体,您必须先执行Orderby才能使用Skip and Take.
| 归档时间: |
|
| 查看次数: |
8329 次 |
| 最近记录: |