程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> ASP.NET MVC雕蟲小技 3、Pager

ASP.NET MVC雕蟲小技 3、Pager

編輯:關於ASP.NET

上篇過後,被評為沒有什麼技術含量了,但我覺得這並沒有什麼問題,因為文章不一定會讓所有人群受益,文章或適於新手,或適於熟手。 但凡是對人有所啟發,我覺得寫文章有值得。

而且我覺得這一系列主要是在開發中遇到的問題及解決方法,有容易想到的,有經過幾次 開發迭代才形成的。還是那句話,這些未必是一些高效的技巧,但是的確是能解決問題,也未必有什麼高深的原理,只是我覺得值得分享。

3.Pager

3.1需求及模擬代碼

需求,假設我們有個列表,有分頁功能,我們可能需要一個頁碼列表,如

我們模擬寫一下Action:

1: public ActionResult Index(int? p)
  2: {
  3:   if (!p.HasValue) p = 1;//如果未對p 傳值就是第1頁
  4:   var list = new List<int>();//生成一個模擬列表
  5:   for (var i = 0;  i < 10;i++ )
  6:   {
  7:     list.Add(p.Value);//是第幾頁就向中填充幾個這個頁碼的數
  8:    }
  9:   return View(list);//強型傳遞給View
 10: }

View中我寫以下顯示方式:

1: <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master"  Inherits="System.Web.Mvc.ViewPage<List<int>>" %>
  2:
  3: <asp:Content  ID="indexTitle" ContentPlaceHolderID="TitleContent" runat="server">
  4:   Pager  for List
  5: </asp:Content>
  6:
  7: <asp:Content ID="indexContent"  ContentPlaceHolderID="MainContent" runat="server">
  8:   <div>
  9:      <ul>
 10:       <%foreach (int i in Model){//顯示這個列表%>
 11:        <li><%=i %></li>
 12:       <%} %>
 13:     </ul>
 14:    </div>
 15:   <!--將在這裡顯示分頁的部分-->
 16:  </asp:Content>

下面是運行後 的結果:

第一頁URL類似/Home/Index?p=1

第二頁URL類似/Home/Index?p=2

其它頁面以此類推

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved