欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
無(wú)廢話(huà)MVC入門(mén)教程八[MvcPager分頁(yè)控件的使用]
mvc問(wèn)題有問(wèn)必答,歡迎加群:

本文目標

一、能夠使用MvcPager進(jìn)行分頁(yè)

本文目錄

一、MvcPager控件的簡(jiǎn)單使用

二、C#擴展方法

一、MvcPager控件的簡(jiǎn)單使用

1、添加MvcPager.dll的引用[下載]

2、Control中的方法

 1         //獲取列表 2         public ActionResult List(int? id = 1) 3         { 4             List<DTO.User> userList = new List<DTO.User>(); 5             int totalCount = 0; 6             int pageIndex = id ?? 1; 7             userList = SC.Repository.User.GetList("", 2, (pageIndex - 1) * 2, out totalCount); 8             PagedList<DTO.User> mPage = userList.AsQueryable().ToPagedList(pageIndex, 2); 9             mPage.TotalItemCount = totalCount;10             mPage.CurrentPageIndex = (int)(id ?? 1);11             return View(mPage);12         }

SC.Repository.User.GetList("", 2, (pageIndex - 1) * 2, out totalCount)方法為分頁(yè)方法,此處的StrUserName只是在查詢(xún)的時(shí)候一個(gè)條件而發(fā),其他和傳統的分頁(yè)一樣如下:

1 public static List<DTO.User> GetList(string StrUserName, int PageSize, int CurrentCount, out int TotalCount)

PagedList<DTO.User> mPage = userList.AsQueryable().ToPagedList(pageIndex, 2);

這里用到了擴展方法,首先將userList調用Linq中的擴展IEnumerable接口的方法,把List<T>轉換成為IQueryable<T>,接口如下:

1 public static IQueryable<TElement> AsQueryable<TElement>(this IEnumerable<TElement> source);

再調用MvcPager中對IQueryable<T>的擴展方法轉換成PagedList<T>供View中使用,接口如下:

1 public static PagedList<T> ToPagedList<T>(this IQueryable<T> allItems, int pageIndex, int pageSize);

3、View中使用MvcPager

 1 @model PagedList<SongCai8.DTO.User> 2 @using Webdiyer.WebControls.Mvc; 3 @{ 4     Layout = null; 5 } 6 <!DOCTYPE html> 7 <html> 8 <head> 9     <title>List</title>10 </head>11 <body>12     @foreach (SongCai8.DTO.User user in Model)13     {14         @user.UserID<span>---</span>@user.UserName<span>---</span> 15         @Html.ActionLink("Edit", "Edit", new { id = user.UserID }) <span>---</span> 16         @Html.ActionLink("Details", "Details", new { id = user.UserID }) <span>---</span> 17         @Html.ActionLink("Delete", "Delete", new { id = user.UserID })<span>---</span> 18 19         <br />20     }21     <br />22     <br />23     @Html.Pager(Model, new PagerOptions24 {25     PageIndexParameterName = "id",26     ShowPageIndexBox = true,27     FirstPageText = "首頁(yè)",28     PrevPageText = "上一頁(yè)",29     NextPageText = "下一頁(yè)",30     LastPageText = "末頁(yè)",31     PageIndexBoxType = PageIndexBoxType.TextBox,32     PageIndexBoxWrapperFormatString = "請輸入頁(yè)數{0}",33     GoButtonText = "轉到"34 })35     <br />36     >>分頁(yè) 共有 @Model.TotalItemCount 篇留言 @Model.CurrentPageIndex/@Model.TotalPageCount37 </body>38 </html>

4、效果如下:

二、C#擴展方法

MSDN:擴展方法使您能夠向現有類(lèi)型“添加”方法,而無(wú)需創(chuàng )建新的派生類(lèi)型、重新編譯或以其他方式修改原始類(lèi)型。 擴展方法是一種特殊的靜態(tài)方法,但可以像擴展類(lèi)型上的實(shí)例方法一樣進(jìn)行調用。

理解什么是擴展方法:用靜態(tài)類(lèi)及靜態(tài)方法為原有類(lèi)的添加新的方法。說(shuō)起來(lái)有點(diǎn)抽象,邊上代碼邊解釋。

原始類(lèi):

1     public class Person2     {3         public string ShowName()4         {5             return "顯示名稱(chēng)";6         }7     }

我們定義了一個(gè)Person類(lèi),類(lèi)里只有一個(gè)方法ShowName()。眾所周知,代碼如下:

1             Person person = new Person();2             person.ShowName();

擴展類(lèi):

加入“顯示密碼的”擴展方法(為了體現出對比性,下面代碼稍有重復):

 1     //原始類(lèi) 2     public class Person 3     { 4         public string ShowName() 5         { 6             return "顯示名稱(chēng)"; 7         } 8     } 9 10     //擴展Person的靜態(tài)類(lèi)11     public static class ExtensionMethod12     {13         public static string ShowPassword(this Person person)14         {15             return "顯示密碼";16         }17     }

代碼解釋?zhuān)?/p>

ExtensionMethod中的ShowPassword參數this Person 說(shuō)明要擴展的類(lèi)型為Person類(lèi),并且要用this關(guān)鍵字修飾。在使用時(shí)這個(gè)參數是不需要傳入的,這點(diǎn)和我們在傳統的類(lèi)中方法參數有些不同。

使用:

使用與平時(shí)我們使用在類(lèi)中定義的方法相同,代碼如下:

1             Person person = new Person();2             //原始方法3             Response.Write(person.ShowName());4             //換行5             Response.Write("<br />");6             //擴展方法7             Response.Write(person.ShowPassword());

效果如下:

應用:

最常見(jiàn)的擴展方法是添加查詢(xún)功能添加到現有 System.Collections.IEnumerable 和 System.Collections.Generic.IEnumerable<T> 類(lèi)型的 LINQ 標準查詢(xún)運算符。若要使用標準查詢(xún)運算符,請首先將它們輸入與 using System.Linq 名稱(chēng)空間。 然后,任何實(shí)現了 IEnumerable<T> 的類(lèi)型看起來(lái)都具有 GroupBy、OrderBy、Average 等實(shí)例方法。 在 IEnumerable<T> 類(lèi)型的實(shí)例(如 List<T> 或 Array)后鍵入“dot”時(shí),可以在 IntelliSense 語(yǔ)句完成中看到這些附加方法。

詳細請查閱MSDN:http://msdn.microsoft.com/zh-cn/library/bb383977.aspx

版權:http://www.cnblogs.com/iamlilinfeng

活到老,學(xué)到老,練到老...
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
7 LIMIT分頁(yè)
Freemarker分頁(yè) - 石礫 - JavaEye技術(shù)網(wǎng)站
使用 ASP.NET Atlas PageNavigator控件實(shí)現客戶(hù)端分頁(yè)導航
C# .Net MVC Razor 視圖靜態(tài)分頁(yè)導航欄生成器
最好的PHP分頁(yè)類(lèi)
三大數據庫分頁(yè)方法(Oracle/MySQL/SQL)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久