• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

asp.net数据分页方法

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
/// <summary>
        /// 数据分页方法
        /// </summary>
        /// <param name="PageIndex">当前页</param>
        /// <param name="PageSize">每页显示数量</param>
        /// <param name="PageCount">总数据</param>
        /// <param name="Url">链接,如:list.aspx?id=1234</param>
        /// <returns></returns>
        public static string GetPage(int PageIndex, int PageSize, int RecordCount, string Url)
        {
            StringBuilder sb = new StringBuilder();
            try
            {
                //计算总页数
                int PageCount = RecordCount % PageSize == 0 ? RecordCount / PageSize : RecordCount / PageSize + 1;
                if (PageIndex < 1)
                {
                    PageIndex = 1;
                }
                if (PageIndex > PageCount)
                {
                    PageIndex = PageCount;
                }
                string StarPage = "";//首页
                string EndPage = "";//尾页
                string PrePage = "";//上一页
                string NextPage = "";//下一页
                //首页和上一页的链接
                if (PageIndex <= 1 || PageCount <= 1)
                {
                    StarPage = "";
                    PrePage = "";
                }
                else
                {
                    StarPage = "";
                    PrePage = "<li class=\"previous\"><a href=\"" + Url + "&page=" + (PageIndex - 1) + "\">上一页</a></li>";
                }
                //末页和下一页的链接
                if (PageIndex == PageCount || PageCount <= 1)
                {
                    EndPage = "";
                    NextPage = "";
                }
                else
                {
                    EndPage = "";
                    NextPage = "<li class=\"next\"><a href=\"" + Url + "&page=" + (PageIndex + 1) + "\">下一页</a></li>";
                }
                //页码输出
                int PagerStart = 1;//第一个页码
                if (PageCount >= 5)
                {
                    PagerStart = PageIndex % 5 == 0 ? PageIndex - 2 : PageIndex - PageIndex % 5;
                }
                if (PagerStart < 1)
                {
                    PagerStart = 1;
                }
                string NumBtn = "";
                for (int i = PagerStart; i < PagerStart + 5 && i <= PageCount; i++)
                {
                    if (i == PageIndex)
                    {
                        NumBtn += "<li class=\"current\"><a>" + i + "</a>";
                    }
                    else
                    {
                        NumBtn += "<li><a href=\"" + Url + "&page=" + i + "\">" + i + "</a></li>";
                    }
                }
                sb.Append(StarPage + PrePage + NumBtn + NextPage + EndPage);
            }
            catch
            {
                sb.Append("");
            }
            return sb.ToString();
        }

具体样式可以去www.weixh.net参考一下


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
NetCoreIISExpressInIISExpressInAsp.NetCore发布时间:2022-07-10
下一篇:
ASP.NET中的SQL注入攻击与防护发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap