如何获取LINQ分页的总页数

问题描述 投票:0回答:2

基于如何在列表上应用分页的答案。

我想扩展这个问题,即我们如何获得每页特定项目总集合的列表的总页数?

例如,假设我有 50 个项目,每页有 12 个项目。我怎样才能得到总页数?

c# linq pagination ienumerable enumeration
2个回答
3
投票

这不是简单的数学吗?

页数 = Round(总记录数 / 页大小)

在 C# 中

int totalItemCount = myList.Count();
int pageSize = 10;

int pageCount = System.Convert.ToInt32(System.Math.Ceiling(totalItemCount / System.Convert.ToDouble(pageSize)));

1
投票

您需要预先知道您总共有多少条记录。

为此,只需使用

yourquery.Count()
。它将转换为 sql 到一些以
SELECT COUNT(*)...
开头的查询,并且不会迭代每条记录。

© www.soinside.com 2019 - 2024. All rights reserved.