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页的内容

posted @   object0812  阅读(1132)  评论(2编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示