在 C# 中,计算分页的总页数有多种算法,具体代码如下:
// 数据库查询返回的总记录数
int totalRecord; //总记录数
int maxResult; //每页最大记录数
//算法一:
int totalPage = totalRecord % maxResult == 0 ? totalRecord / maxResult : totalRecord / maxResult + 1 ;
//算法二:
int totalPage = (totalRecord + maxResult -1) / maxResult;
//其中 maxResult - 1 就是 totalRecord / maxResult 的最大的余数;使用整除并确保最后一页不为空
//算法三:
int totalPage= (int) Math.ceil(totalRecord/ maxResult);
在上述算法中,算法的原理都是通过计算总记录数与每页最大记录数的商和余数,来确定总页数。
不同的算法在于如何处理余数,以及是否使用了 Math.ceil 函数进行向上取整。
如需向上或是向下取整,请参考:C# Math.Floor与Math.Round_c# math.floor和math.round-优快云博客
请注意,在实际应用中,需要根据具体的需求和数据结构选择合适的分页算法。