2011-12-16 80 views
2

高效分頁我剛纔上傳的文章到CodeProject:與中繼器,SQL Server和自定義的尋呼機

http://www.codeproject.com/KB/webforms/efficientpagingrepeater.aspx

基本上,它是()使用中繼器,SQL服務器與ROW_NUMBER OVER聲明和自定義尋呼機。

我想擴展尋呼機,以便它可以在單個頁面上多次使用,並且還允許上一個/下一個按鈕。我不確定如何做到這一點 - 任何人都可以提供建議/一些代碼修改?

回答

1

CP還沒有發佈文章,所以我無法對此發表評論。我可以說幾乎每個DAL工具(EF,NH,AR,Massive,Dapper.Net,Simple.Data)都內置了分頁。因此,將分頁連接到中繼器應該不是什麼問題。

如果這篇文章指的是一個webforms服務器控件的頁面數據,我會不惜一切代價避免它。數據訪問不應該由UI組件管理。並使用上面列出的各種DAL,使用代碼訪問數據庫非常簡單,而不是使用拖放控件。

得到分貝尋呼地方,你需要3個輸入和2個輸出 輸入

  1. SQL查詢&參數
  2. 起點(頁面或頁面索引)的記錄
  3. 最大#(頁面大小)

輸出

  1. 當前結果頁
  2. 的使用記錄的總數和頁面大小,你可以計算的總頁數記錄

總數。

var pages = total records/page size + (total records % page size > 0 ? 1 : 0); 

與結果的頁面,當前頁面&的總頁數您可以構建UI佈局

+0

的URL現在工作即, CP張貼了文章。我做了類似於你的「var頁面」的東西 - 我使用的是Enterprise Library,但不是那裏的分頁功能 - 所有的東西都被服務器有效地處理,而不使用temptables。如果你有時間,你可以看看我的代碼,看看它可以改進的地方,以及如何實現下一個/上一個,並允許代碼在單個頁面上多次使用? – Sha 2011-12-17 08:05:50