asp.net 分页链接方法

(编辑:jimmy 日期: 2026/1/15 浏览:2)

复制代码 代码如下:
/// <summary>
/// 分页链接
/// </summary>
/// <param name="pageSize"></param>
/// <param name="recordCount"></param>
/// <param name="currentPage"></param>
/// <param name="prev">当前页前面显示的数量</param>
/// <param name="next">当前页后面显示的数量</param>
/// <returns></returns>
public string PageLink(int pageSize, int recordCount, int currentPage, int prev, int next)
{
int pageCount = recordCount % pageSize == 0 ? (recordCount / pageSize) : ((int)Math.Ceiling((double)recordCount / pageSize));
StringBuilder sb = new StringBuilder();
if (currentPage > 1 && recordCount > 1)
{
sb.Append("<a href=\"?page=");
sb.Append((currentPage - 1).ToString());
sb.Append("\">前一页</a>&nbsp;&nbsp;");
}
if (currentPage > prev + 1)
sb.Append("<a href=\"?page=1\">1</a>&nbsp;...&nbsp;");
if (currentPage < prev)
next = next + prev - currentPage + 1;
if (next > pageCount - currentPage)
prev = prev + next - (pageCount - currentPage);
for (int i = 1; i <= pageCount; i++)
{
if (i == currentPage)
{
sb.Append("<a href=\"?page=" + i + "\" class=\"current\" ><font color=\"red\">" + i + "</font></a>&nbsp;&nbsp;");
}
else
{
if (i > (currentPage - prev - 1) && i < (currentPage + next + 1))
{
sb.Append("<a href=\"?page=" + i + "\">" + i + "</a>&nbsp;&nbsp;");
}
}
}
if (currentPage < pageCount - next)
sb.Append("...&nbsp;<a href=\"?page=" + pageCount.ToString() + "\">" + pageCount.ToString() + "</a>");
if (currentPage < pageCount)
sb.Append("&nbsp;&nbsp;<a href=\"?page=" + (currentPage + 1).ToString() + "\">后一页</a>");
return sb.ToString();
}

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。