namespace Common
{public class PageLinkHelp{/// <summary>/// 生成分页超链接标签/// 使用了Bootstrap3的分页样式:首页«第380页第381页第382页第383页第384页»尾页/// </summary>/// <param name="pageIndex">当前页码(当前页索引)</param>/// <param name="pageCount">总页码数/// 总页数计算公式:/// 第1种.Math.Max((数据总条数 + 每页显示的数量 - 1) / 每页显示的数量, 1):/// var pageCount = Math.Max((count + pageSize - 1) / pageSize, 1);/// 第2种.(int)Math.Ceiling(数据总条数 * 1.00 / 每页显示的数量) :/// var pageCount = (int)Math.Ceiling(count * 1.00 / pageSize);/// </param>/// <returns>页码超链接</returns>public static string GetPageBar(int pageIndex, int pageCount){if (pageCount <= 1){return string.Empty;}int start = (pageIndex - 2);if (start < 1){start = 1;}int end = (start + 4);if (end > pageCount){start += pageCount - end;end = pageCount;}var linkStr = new System.Text.StringBuilder();linkStr.Append("<ul class=\"pagination\">");if (pageIndex != 1){linkStr.Append($"<li class=\"page-item\"><a class=\"page-link\" href='?pageIndex={1}' >首页</a></li>");linkStr.Append($"<li class=\"page-item\"><a class=\"page-link\" href='?pageIndex={pageIndex - 1}' >&laquo;</a></li>");}for (int i = start; i <= end; i++){if (i == pageIndex){//active//当前页linkStr.Append($"<li class=\"page-item active\"><a class=\"page-link\" href='?pageIndex={i}' >第{i}页</a></li>");}else{linkStr.Append($"<li class=\"page-item\"><a class=\"page-link\" href='?pageIndex={i}' >第{i}页</a></li>");}}if (pageIndex < pageCount){linkStr.Append($"<li class=\"page-item\"><a class=\"page-link\" href='?pageIndex={pageIndex + 1}' >&raquo;</a></li>");linkStr.Append($"<li class=\"page-item\"><a class=\"page-link\" href='?pageIndex={pageCount}' >尾页</a></li>");}linkStr.Append("</ul>");return linkStr.ToString();}}
}

记录一下,方便以后用。。。感觉计算这些乱七八糟的。。。

转载于:https://www.cnblogs.com/heheblog/p/net_study_20180730.html

Asp.Net分页生成页码超链接方法相关推荐

  1. 详谈asp生成静态页方法

    生成静态页的好处不用说,当今大型网站,为缓解服务器端的压力许的的页面都改用了静态的页面,并利用AJAX技术动态地更新其中的部分内容,如广告等. 一个简单的不用模板可以直接生成HTML静态页的方法. 如 ...

  2. 【转】 asp.net从视频文件中抓取一桢并生成图像文件的方法 实现多语言本地化应用程序 自动返回上次请求页面...

    asp.net从视频文件中抓取一桢并生成图像文件的方法 http://www.bianceng.cn/webkf/aspx/201012/21428.htm WebUIValidation.js ht ...

  3. ASP.NET分页方法的了解程度

    ASP.NET分页方法的了解程度 [出现频率] ★★★★☆ [解答] ASP.NET分页的常用方法有以下几种. q 启用部分数据控件的内置分页功能,如设置GridView控件的"AllowP ...

  4. asp.net分页方法

    ASP.NET分页的是我们在编程过程中遇到的常见问题,下面就这个问题说下添美的看法. q 启用部分数据控件的内置分页功能,如设置GridView控件的"AllowPaging"属性 ...

  5. Thinkphp 自动生成页码 分页显示

    代码全部是在ThinkPHP框架下编写. 页码自动生成函数, public function page_nav($page_id, $log_num,$page_step) {/** 根据总的日志数目 ...

  6. java让关键词自动加超链接,ASP实现关键词自动添加超链接代码与使用方法

    网站内链模块是SEO常提到的一个优化模块,给关键词锚文本添加超链接,如果手动添加,既不好维护也浪费人力,下面青岛星网跟大家分享:ASP实现关键词自动添加超链接代码与使用方法. ASP关键词自动替换函数 ...

  7. 自己开发的ASP.NET分页控件2.0 (Ling.Pager)

    ASP.NET分页控件2.0(Ling.Pager) 主要特色: 内置分页类库,完美支持复杂Sql分页 支持事件分页和Url分页(非事件) 支持默认.中文.英文语言模式. 默认漂亮且简洁的Css样式 ...

  8. ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)

    在本节中,您将验证电影控制器生成的编辑方法(Edit action methods)和视图.但是首先将修改点代码,使得发布日期属性(ReleaseDate)看上去更好.打开Models \ Movie ...

  9. QuickPager asp.net 分页控件 转

    QuickPager asp.net 分页控件.表单控件等自定义控件下载 和介绍 最新下载地址: 自然框架的源代码.Demo.数据库.配置信息管理程序下载(2010.01.25更新) QuickCon ...

  10. asp.net分页控件使用详解【附实例下载】

    本篇文章主要对asp.net创建事务的方法进行实例介绍,具有很好的参考价值,需要的朋友一起来看下吧 一.说明 AspNetPager.dll这个分页控件主要用于asp.net webform网站,现将 ...

最新文章

  1. Android5.0如何正确启用isLoggable(二) 理分析
  2. 责任链模式——HeadFirst设计模式学习笔记
  3. 后端选型中不同语言及对应的Web框架
  4. 报告指出数据中心效率有所提高
  5. 箭在弦上!雷军暗示:小米10系列有望2月3日开启预热
  6. 以太网的phy寄存器分析
  7. 针织物染色常见的6大问题
  8. QT+PCL 点云学习
  9. bulk insert java_java oracle bulk insert
  10. “能耗双控”,汽车行业如何应对——安科瑞汽车工业能效管理系统为您解决
  11. 卧槽!还有这种事!马斯克的SpaceX-API 竟然开源了!登顶GitHub热榜!
  12. 移动端页面底部导航被浏览器工具栏遮盖解决方法
  13. Learning to Reweight Examples for Robust Deep Learning
  14. 避雷秘籍:iOS过审的基础条件
  15. 新增计算机专硕!数二英二,只有数据结构!合肥学院招80人!
  16. 主动访问用户数据 ——被站长忽视的内容
  17. CPU的构架之ARM和Intel的区别(x86/x64/ARM64/ARM)
  18. Android中添加驱动的方法
  19. 如何在cv2窗口图像上写字_Python for opencv 之 显示图像及在图像上书写文字
  20. DDR SDRAM芯片DQS的作用以及读写DQS/DQ对齐方式不同的原因

热门文章

  1. inDesign文字教程,如何制作复古文本效果?
  2. 如何通过 MacBook Pro 上的触控栏使用辅助功能?
  3. Lungo 保持 Mac 屏幕唤醒的方便工具
  4. 如何使用 macOS 帮助菜单?
  5. Parallels Desktop 17 亮点整理,7 大改进与变化
  6. Mac升级macOS Big Sur之前如何优化并增加内存空间?
  7. Mac电脑如何设置触控栏显示APP控制?
  8. Chrome OS 开发者版现可备份和恢复 Linux 容器
  9. SFB 项目经验-15-配置会议邀请中企业信息
  10. [javase] 1.请从键盘随机输入10个整数保存到List中,并按倒序、从大到小的顺序显示出来...