[C#] 分页查询方法2 →→→→→进入此内容的聊天室

来自 , 2021-03-11, 写在 C#, 查看 106 次.
URL http://www.code666.cn/view/65f2a94c
  1. /// <summary>
  2.   /// 生成页码的html
  3.   /// </summary>
  4.   /// <param name="urlFormat">超链接的格式。list.ashx?pagenum={pageNum}。地址中用{pagenum}做为当前页码的占位符</param></param>
  5.   /// <param name="totalSize">总数据条数</param>
  6.   /// <param name="pageSize">每页多少条数据</param>
  7.   /// <param name="currentPage">当前页</param>
  8.   /// <returns></returns>
  9.   public static RawString Pager(string urlFormat, long totalSize,
  10.    long pageSize, long currentPage)
  11.   {
  12.    StringBuilder sb = new StringBuilder();
  13.    //总页数
  14.    long totalPageCount = (long)Math.Ceiling((totalSize * 1.0f) / (pageSize * 1.0f));
  15.    //当前页的前几页
  16.    long firstPage = Math.Max(currentPage - 5, 1);
  17.    //当前页的后几页
  18.    long lastPage = Math.Min(currentPage + 6, totalPageCount);
  19.    //绘制分页,首页
  20.    sb.AppendLine("<div><a href='" + urlFormat.Replace("{pageNum}", "1") + "'>首页</a>");
  21.    //绘制分页中间数据部分
  22.    for (long i = firstPage; i < lastPage; i++)
  23.    {
  24.     string url = urlFormat.Replace("{pageNum}", i.ToString());
  25.     if (i == currentPage) //点击后就不显示超链接
  26.     {
  27.      sb.AppendLine("<a>" + i + "</a>");
  28.     }
  29.     else
  30.     {
  31.      sb.AppendLine("<a href='" + url + "'>" + i + "</a>");
  32.     }
  33.    }
  34.    //显示最后一页
  35.    sb.AppendLine("<a href='" + urlFormat.Replace("{pageNum}", totalPageCount.ToString()) + "'>末页</a></div>");
  36.    return new RawString(sb.ToString());
  37.   }

回复 "分页查询方法2"

这儿你可以回复上面这条便签

captcha