標籤:art images 提高 pre 好的 分布 產生 輕量 alt
1 Mvc分頁組件MvcSimplePager代碼重構
1.1 Intro
1.2 MvcSimplePager 代碼最佳化
1.3 MvcSimplePager 使用
1.4 End
Mvc分頁組件MvcSimplePager代碼重構Intro
MvcSimplePager 是為解決分頁的而做的一個通用、擴充性良好的輕量級分頁擴充,可以自訂分頁時調用的方法,自訂分頁所用的樣式,樣式與代碼分離,維護方便。
網上有許多分頁都是查詢所有資料再從中查詢某一頁的資料,但是個人感覺資料很少時還可以,如果資料比較多這樣根本是不可行的,需要哪一頁資料再查詢哪一頁的資料才是正確的做法,才能一定程度上提高查詢的效率。
在網上看了幾個分頁組件,感覺分頁的 html 代碼和 CSharp 代碼都有不同程度上的耦合,都不是特別滿意, 於是自己封裝了一個分頁組件,基本可以實現 html 代碼與 CSharp 代碼的完全分離。
MvcSimplePager 代碼最佳化
MvcSimplePager 是這樣開始的 http://www.cnblogs.com/ben121011/p/5913797.html
從開始的把分頁的樣式和翻頁事件耦合在代碼中到把翻頁事件分離出來再到最後把分頁樣式也分離開來,MvcSimplePager 才算開始了。
之後是BUG修改和思考代碼的最佳化和重構
在開始在視圖上展示資料 使用 foreach
遍曆資料時是需要 Model.Data 才能夠遍曆的,之後最佳化成為只需要Model就可以了,像下面這樣:
foreach(var item in Model)
V1.0的時候是沒有 GroupSize 的,為了使用起來更方便加入了一個 GroupSize ,協助更好的實現更優美的分頁, 剛加的時候不知道當前為什麼加了一個驗證 GroupSize 不能大於8的限制【捂臉...】,上個版本已經去掉
總之,希望這個分頁組件能夠解決大家的分頁問題,也希望能夠它越來越好用,使用起來越來越簡單,編碼越來越優美。
下面介紹一下具體使用
MvcSimplePager 使用
引用 MvcSimplePager 包
在 nuget 包管理器中搜尋 “MvcSimplePager”
自訂 分頁分部視圖
建立自己項目的分頁分布視圖,放在 Views目錄下的 Shared 目錄下
可參考 demo 項目中的 兩個樣本修改為自己想用的Pager:
- PagerPartial
- PagerPartial1 【推薦】
後台代碼中設定頁面資料
控制器代碼只需要三行代碼:
設定所需設定分頁的頁面
在頁面上展示資料
MvcSimplePager 已經對Model進行了處理,在頁面上展示資料,可以直接 foreach
Model
分頁
MvcSimplePager 定義了為 HtmlHelper定義了一個 Pager的擴充方法,用法如下:
- 第一個參數是 Model 裡封裝的一個分頁資訊
- 第二個參數是分頁事件,預設是超連結,這裡我是調用的一個進行分頁的 js 方法
- 第三個參數是 分頁分部視圖的名稱
- 第四個參數是 分頁資訊展示選項,現在有兩種,總是展示和需要翻頁時才展示
End
現在已經將這個項目 MvcSimplePager 打包到 Nuget http://www.nuget.org/packages/MvcSimplePager/,你可以在VS中 nuget 包管理器中搜尋 MvcSimplePager 進行使用 。
自訂 MvcSimplePager 項目和範例程式碼:https://github.com/WeihanLi/MvcSimplePager ,你可以根據需要再進行自己的定製。
如果 MvcSimplePager 還有什麼不能滿足你的需要,歡迎與我聯絡,期待您的建議和反饋 [email protected]
Mvc分頁組件MvcSimplePager代碼重構