Linq 使用skip和take分页
Posted 可乐同学丶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linq 使用skip和take分页相关的知识,希望对你有一定的参考价值。
static int Main(string[] args) { //每页条数 const int pageSize = 2; //页码 0就是第一条数据 int pageNum = 0; string[] computer = { "苹果", "联想", "惠普", "Thinkpad", "三星", "VIVO", "OPPO", "华为", "小米", "微软", "神州", "IBM" }; while (pageNum * pageSize < computer.Length) { //分页skip,take方法 var page = computer.Skip(pageNum * pageSize).Take(pageSize); Console.WriteLine("输出第{0}页记录", pageNum + 1); //输出每页内容 foreach (var q in page) { Console.WriteLine(q); } pageNum++; } Console.ReadKey(); return 0; //如果是static void Main,则会报错 }
list = list.Skip(pageNum* pageSize).Take(pageSize).ToL list = list.Skip(2 * 2).Take(2).ToList();
pageSize:表示每页有多少条数据
pageNum:表示页数,正确表达式pageNum+1。pageNum=0,是第一页。pageNum=1,是第二页。
Skip:表示从pageNum* pageSize+1条开始算,原来就有pageNum* pageSize条数据
Take:等于pageSize的值,也可以直接用int类型表示
pageNum* pageSize=4,前面有4条数据,从第5条开始,显示第3页的内容
set.Where(filter).OrderBy(orderBy)
.Skip(paging.PageSize * paging.PageIndex)
.Take(paging.PageSize);
先排序 在分页
以上是关于Linq 使用skip和take分页的主要内容,如果未能解决你的问题,请参考以下文章