有時候我們從數據庫獲取的數據量太大,而我們不需要一次性顯示那么多的時候,我們就要對數據進行分頁處理了,讓每頁顯示不同的數據。
1 public DataTable GetPagedTable(DataTable dt, int PageIndex, int PageSize)//PageIndex表示第幾頁,PageSize表示每頁的記錄數 2 { 3 if (PageIndex == 0) 4 return dt;//0頁代表每頁數據,直接返回 5 6 DataTable newdt = dt.Copy(); 7 newdt.Clear();//copy dt的框架 8 9 int rowbegin = (PageIndex - 1) * PageSize; 10 int rowend = PageIndex * PageSize; 11 12 if (rowbegin >= dt.Rows.Count) 13 return newdt;//源數據記錄數小於等於要顯示的記錄,直接返回dt 14 15 if (rowend > dt.Rows.Count) 16 rowend = dt.Rows.Count; 17 for (int i = rowbegin; i <= rowend - 1; i++) 18 { 19 DataRow newdr = newdt.NewRow(); 20 DataRow dr = dt.Rows[i]; 21 foreach (DataColumn column in dt.Columns) 22 { 23 newdr[column.ColumnName] = dr[column.ColumnName]; 24 } 25 newdt.Rows.Add(newdr); 26 } 27 return newdt; 28 }
作者:Adolf Ye 出處:http://www.cnblogs.com/dt520/ 本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。 |