/// /// 生成页码的html /// /// 超链接的格式。list.ashx?pagenum={pageNum}。地址中用{pagenum}做为当前页码的占位符 /// 总数据条数 /// 每页多少条数据 /// 当前页 /// public static RawString Pager(string urlFormat, long totalSize, long pageSize, long currentPage) { StringBuilder sb = new StringBuilder(); //总页数 long totalPageCount = (long)Math.Ceiling((totalSize * 1.0f) / (pageSize * 1.0f)); //当前页的前几页 long firstPage = Math.Max(currentPage - 5, 1); //当前页的后几页 long lastPage = Math.Min(currentPage + 6, totalPageCount); //绘制分页,首页 sb.AppendLine("
首页"); //绘制分页中间数据部分 for (long i = firstPage; i < lastPage; i++) { string url = urlFormat.Replace("{pageNum}", i.ToString()); if (i == currentPage) //点击后就不显示超链接 { sb.AppendLine("" + i + ""); } else { sb.AppendLine("" + i + ""); } } //显示最后一页 sb.AppendLine("末页
"); return new RawString(sb.ToString()); }