MVC分頁讓你更爽

建立Controller控件器與強類型視圖呢,還有Models裏面的對象實體,相信大家看了我以前發的就能建立好了,在這裏呢就不建立了哈親css

 

在用戶控件器裏面寫代碼了html

下面這個分頁的方法web

  
  
  
  
  1. /// <summary> 
  2.        /// 用戶信息分頁 
  3.        /// </summary> 
  4.        /// <returns></returns> 
  5.        public ActionResult UserDataPage() 
  6.        { 
  7.            EFFristModelEntities ef = new EFFristModelEntities(); 
  8.            int pageIndex = 1;//記錄頁的條數 
  9.            int pageSize = 3;//每頁顯示的條數 
  10.            int.TryParse(Request.QueryString["pageIndex"],out pageIndex);//強轉一下這個記錄頁的條數 
  11.            int pageIndexCount =Convert.ToInt32(ef.UserInfo.Count());//獲取 總的記錄數 
  12.            int pageCount = Convert.ToInt32(Math.Ceiling(pageIndexCount*1.0/pageSize));//獲取總的頁數 
  13.            //判斷頁的取值範圍 
  14.            if (pageIndex < 1) 
  15.            { 
  16.                pageIndex = 1; 
  17.            } 
  18.            if (pageIndex > pageCount) 
  19.            { 
  20.                pageIndex = pageCount; 
  21.            } 
  22.            //Linq語句 
  23.            var temp = from user in ef.UserInfo 
  24.                       .OrderBy(user => user.ID) 
  25.                       .Skip((pageIndex - 1) * pageSize)//跳過的序列 
  26.                       .Take(pageSize)//返回指定數量的元素 
  27.                       select user; 
  28.            ViewData.Model = temp;//把這個Linq語句讀取的數據給這個實體model 
  29.            ViewData["pageIndex"] = pageIndex; 
  30.            ViewData["pageIndexCount"] = pageIndexCount; 
  31.            ViewData["pageCount"] = pageCount; 
  32.            ViewData["pageSize"] = pageSize; 
  33.            return View(); 
  34.        } 

這個在前臺循環的展現數據ide

   
   
   
   
  1. <%for (int i = 1; i <= Convert.ToInt32(ViewData["pageCount"]); i++) 
  2.      { %> 
  3.        <%:Html.ActionLink(i.ToString(),"UserDataPage",new {pageIndex=i}) %><!--這用到了Html.ActionLink連接標籤裏面的參數有一個文本連接就是所獲得的數字,第二個參數爲執行的方法,第三個是值--> 
  4.    <%} %> 
  5.    <%:"當前頁:" + ViewData["pageSize"] + "數據"%>&nbsp;<%:"共:"+ViewData["pageIndexCount"]+"條" %>&nbsp;<%:"共:"+ViewData["pageCount"]+"頁" %>&nbsp; 
  6.  

第二種分頁  有樣式ui

這個是在models裏面建立的類 是一個靜態的類型爲HtmlString的 是微軟定義的一個類this

  
  
  
  
  1. public static HtmlString ShowPageNavigate(this HtmlHelper htmlHelper, int currentPage, int pageSize, int totalCount) 
  2.         { 
  3.             var redirectTo = htmlHelper.ViewContext.RequestContext.HttpContext.Request.Url.AbsolutePath; 
  4.             pageSize = pageSize == 0 ? 3 : pageSize; 
  5.             var totalPages = Math.Max((totalCount + pageSize - 1) / pageSize, 1); //總頁數 
  6.             var output = new StringBuilder(); 
  7.             if (totalPages > 1) 
  8.             { 
  9.                 //if (currentPage != 1) 
  10.                 {//處理首頁鏈接 
  11.                     output.AppendFormat("<a class='pageLink' href='{0}?pageIndex=1&pageSize={1}'>首頁</a> ", redirectTo, pageSize); 
  12.                 } 
  13.                 if (currentPage > 1) 
  14.                 {//處理上一頁的鏈接 
  15.                     output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>上一頁</a> ", redirectTo, currentPage - 1, pageSize); 
  16.                 } 
  17.                 else 
  18.                 { 
  19.                     // output.Append("<span class='pageLink'>上一頁</span>"); 
  20.                 } 
  21.  
  22.                 output.Append(" "); 
  23.                 int currint = 5; 
  24.                 for (int i = 0; i <= 10; i++) 
  25.                 {//一共最多顯示10個頁碼,前面5個,後面5個 
  26.                     if ((currentPage + i - currint) >= 1 && (currentPage + i - currint) <= totalPages) 
  27.                     { 
  28.                         if (currint == i) 
  29.                         {//當前頁處理 
  30.                             //output.Append(string.Format("[{0}]", currentPage)); 
  31.                             output.AppendFormat("<a class='cpb' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> ", redirectTo, currentPage, pageSize, currentPage); 
  32.                         } 
  33.                         else 
  34.                         {//通常頁處理 
  35.                             output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> ", redirectTo, currentPage + i - currint, pageSize, currentPage + i - currint); 
  36.                         } 
  37.                     } 
  38.                     output.Append(" "); 
  39.                 } 
  40.                 if (currentPage < totalPages) 
  41.                 {//處理下一頁的連接 
  42.                     output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>下一頁</a> ", redirectTo, currentPage + 1, pageSize); 
  43.                 } 
  44.                 else 
  45.                 { 
  46.                     //output.Append("<span class='pageLink'>下一頁</span>"); 
  47.                 } 
  48.                 output.Append(" "); 
  49.                 if (currentPage != totalPages) 
  50.                 { 
  51.                     output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>末頁</a> ", redirectTo, totalPages, pageSize); 
  52.                 } 
  53.                 output.Append(" "); 
  54.             } 
  55.             output.AppendFormat("第{0}頁 / 共{1}頁", currentPage, totalPages);//這個統計加不加都行 
  56.  
  57.             return new HtmlString(output.ToString()); 
  58.         } 
  59. 在前臺調用這個方法便可
  60.  
  61.     
        
        
        
    1. <div class="page_nav"> 
    2.     <%:Html.ShowPageNavigate(Convert.ToInt32(ViewData["pageIndex"]),3,Convert.ToInt32(ViewData["pageCount"])) %> 
    3.    </div> 
    4.    <p> 

    這個是樣式文件夾 這個呢能夠在網上扒的哈,我這不必定你就能用的哦 親spa

         
         
         
         
    1. .paginator 
    2.     font12px ArialHelveticasans-serif
    3.     padding10px 20px 10px 0
    4.     margin0px
    5.  
    6. .paginator a 
    7.     bordersolid 1px #ccc
    8.     color#0063dc
    9.     cursorpointer
    10.     text-decorationnone
    11.  
    12. .paginator a:visited 
    13.     padding1px 6px
    14.     bordersolid 1px #ddd
    15.     background#fff
    16.     text-decorationnone
    17.  
    18. .paginator .cpb 
    19.     border1px solid #F50
    20.     font-weight700
    21.     color#F50
    22.     background-color#ffeee5
    23.  
    24. .paginator a:hover 
    25.     bordersolid 1px #F50
    26.     color#f60
    27.     text-decorationnone
    28.  
    29. .paginator a, .paginator a:visited, .paginator .cpb, .paginator a:hover 
    30.     floatleft
    31.     height16px
    32.     line-height16px
    33.     min-width10px
    34.     _width10px
    35.     margin-right5px
    36.     text-aligncenter
    37.     white-spacenowrap
    38.     font-size12px
    39.     font-familyArial,SimSun; 
    40.     padding0 3px
    41. /*****************************2*/ 
    42. .page_nav, 
    43.  
    44. #commentpage{clear:bothpadding:15px 0color:#666font:normal 12px/24px Arialtext-align:center;} 
    45.  
    46. .page_nav a, 
    47.  
    48. #commentpage a{display:inline-blockheight:22pxmargin:0 2pxpadding:0 8pxborder:solid 1px #dbe5ee; -moz-border-radius:2px; -webkit-border-radius:2px; -khtml-border-radius:2px; border-radius:2pxbackground:#fffcolor:#333font:normal 12px/22px ArialHelveticasans-serifcursor:pointer;} 
    49.  
    50.     .page_nav strong{display:inline-blockheight:24pxmargin:0 3pxpadding:0 8pxborder:none; -moz-border-radius:2px; -webkit-border-radius:2px; -khtml-border-radius:2px; border-radius:2pxbackground:#c00color:#ffffont-weight:normalline-height:24pxtext-decoration:none;} 
    51.  
    52.     .page_nav a:hover, 
    53.  
    54.     .page_nav a.on{height:24pxmargin:0 3pxborder:nonebackground:#c00color:#fffline-height:24pxtext-decoration:none;} 
    55.  
    56.     .page_nav a.select{cursor:default;} 
    57.  
    58.     .page_nav .view_all{display:blocktext-align:center;} 
    59.  
    60.     .page_nav .view_all a{height:automargin:0padding:0border:nonecolor:#06cline-height:24px;} 
    61.  
    62.     .page_nav .view_all a:hover{height:automargin:0padding:0background:none;} 

     3d

相關文章
相關標籤/搜索