有時(shí)候我們從數(shù)據(jù)庫(kù)獲取的數(shù)據(jù)量太大,而我們不需要一次性顯示那么多的時(shí)候,我們就要對(duì)數(shù)據(jù)進(jìn)行分頁(yè)處理了,讓每頁(yè)顯示不同的數(shù)據(jù)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
public DataTable GetPagedTable(DataTable dt, int PageIndex, int PageSize) //PageIndex表示第幾頁(yè),PageSize表示每頁(yè)的記錄數(shù) { if (PageIndex == 0) return dt; //0頁(yè)代表每頁(yè)數(shù)據(jù),直接返回 DataTable newdt = dt.Copy(); newdt.Clear(); //copy dt的框架 int rowbegin = (PageIndex - 1) * PageSize; int rowend = PageIndex * PageSize; if (rowbegin >= dt.Rows.Count) return newdt; //源數(shù)據(jù)記錄數(shù)小于等于要顯示的記錄,直接返回dt if (rowend > dt.Rows.Count) rowend = dt.Rows.Count; for ( int i = rowbegin; i <= rowend - 1; i++) { DataRow newdr = newdt.NewRow(); DataRow dr = dt.Rows[i]; foreach (DataColumn column in dt.Columns) { newdr[column.ColumnName] = dr[column.ColumnName]; } newdt.Rows.Add(newdr); } return newdt; } |
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:http://www.cnblogs.com/dt520/p/5923686.html