• asp.net mvc 分页


    一个简单的asp.net mvc3分页

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Web.Mvc;
    using System.Web.Mvc.Html;
    
    namespace System.Web.Mvc.Html
    {
        public static class ExtensionMethods
        {
            /// <summary>/// 创建分页链接/// </summary>
            /// <param name="helper">HtmlHelper类</param>
            /// <param name="startPage">开始页 (多数情况下是 1)</param>
            /// <param name="currentPage">当前页</param>
            /// <param name="totalPages">总页数</param>
            /// <param name="pagesToShow">前后显示的页数</param>
            public static MvcHtmlString Pager(this HtmlHelper helper, int startPage, int currentPage, int totalPages, int pagesToShow)
            {
                System.Web.Routing.RouteData  routeData = helper.ViewContext.RouteData;
                //你可能还要获取action    
                string action = routeData.Values["action"].ToString();   
                string controller = routeData.Values["controller"].ToString();
                StringBuilder html = new StringBuilder();
                //创建从第一页到最后一页的列表    
                html = Enumerable.Range(startPage, totalPages).Where(i => (currentPage - pagesToShow) < i & i < (currentPage + pagesToShow))
                    .Aggregate(new StringBuilder(@"<div class=""pagination""><span class=pageCount>共" + totalPages + "页</span>"), (seed, page) =>
                    {
                        //当前页        
                        if (page == currentPage)
                            seed.AppendFormat("<span class=selectPage>{0}</span>", page);
                        else
                        {
                            //第一页时显示:domain/archives            
                            if (page == 1)
                            {
                                seed.AppendFormat("<a class=pageNum href=\"/{0}\">{1}</a>", controller.ToLower(), page);
                            }
                            else
                            {
                                seed.AppendFormat("<a  class=pageNum href=\"/{0}/{2}/{1}\">{1}</a>", controller.ToLower(), page, action);
                            }
                        }
                        return seed;
                    }
                );
                html.Append(@"</div>");
                return MvcHtmlString.Create(html.ToString());
            }
        }
    }
  • 相关阅读:
    [git 学习篇] git commit原理 --实践体会
    [git 学习篇]工作区和暂存区
    [git 学习篇] git文件版本回退再学习
    [git 学习篇]版本回退
    [git 学习篇] 修改文件
    [git 学习篇] 提交文件
    [git 学习篇] --创建git创库
    [测试框架学习] 测试框架的结构包含
    [python测试框架] http接口测试框架
    向SharePoint页面添加后台代码
  • 原文地址:https://www.cnblogs.com/macil/p/2550753.html
Copyright © 2020-2023  润新知