Skip,Take:
1
| list = list.Skip(pageNum * pageSize).Take(pageSize).ToList();
|
pageSize :表示一页多少条。
pageNum:表示页数,但是正确的页数是pageNum + 1。因为pageNum = 0,是第一页。pageNum = 1的时候,是第二页。
Skip :表示从第pageNum * pageSize + 1条数据开始,也就是说再这之前有pageNum * pageSize条数据。
Take:表示显示多少条数据,也就是pageSize条。
1
| list = list.Skip(5 * 2).Take(2).ToList();
|
pageNum * pageSize = 10,那么之前已经有10条数据。从第11条数据开始查询。查询2条。这就是第6页显示的内容。
参考代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| class Program { static int Main() { const int pageSize = 2; int pageNum = 0; string[] names = { "刘一","陈二","张三","李四","王五","赵六","孙七","周八","吴九" }; while (pageNum * pageSize < names.Length) { var query = names.Skip(pageNum * pageSize).Take(pageSize); Console.WriteLine("输出第{0}页记录", pageNum + 1); foreach (var q in query) { Console.WriteLine(q); } pageNum++; } Console.ReadKey(); return 0; } }
|
原文链接:
https://www.cnblogs.com/cang12138/p/5707841.html