(完全限定類名:DataRabbit.Core.IPagerManager)
PagerParameters param = ...; //建構分頁參數
IPagerManager pagerManager= dataAccesser.GetPagerManager(param);
首先,我們看分頁參數PagerParameters中需要提供哪些資訊:
分頁參數包括的資訊有:
Table -- 表示對那個資料表進行分頁。
PageSize -- 表示每頁的大小,包含多少條記錄。
PKey -- 表示依據哪個主鍵進行排序分頁。
WhereStr -- 表示查詢條件,僅僅對滿足條件的查詢結果分頁,如果要分頁表中的所有資料,則設定為其值null。
CacherSize -- 表示最大緩存多少個頁面。
Fields -- 表示要傳回的頁中包括哪些列。
FieldAlias -- 表示要進行替換的列的别名。
通過建構一個PagerParameters執行個體,我們就可以從IDataAccesser擷取目标表的資料分頁管理器IPagerManager執行個體,IPagerManager接口完整定義如下:
public interface IPagerManager
{
/// <summary>
/// GetPage 取出第index頁
/// </summary>
DataTable GetPage(int index) ;
/// ItemCount 符合條件的記錄總數
/// </summary>
int ItemCount{get ;}
/// PageCount 分頁總數
int PageCount{get ;}
/// CacherSize 緩存大小
int CacherSize{get;}
}
GetPage()方法根據頁的索引index就可以得到對應頁的内容,注意,我們使用DataTable反映一頁的内容。
下面是對Student表進行分頁,并且将頁綁定到DataGridView顯示的例子:
PagerParameters para = new PagerParameters("Student", "ID", "", 10);
IPagerManager pagerManager = dataAccesser.GetPagerManager(para);
//綁定
this.dataGridView1.DataSource = pagerManager.GetPage(int.Parse(this.textBox_pageIndex.Text));