2004 5 12 用DataSet實現分頁

2022-03-02 01:03:51 字數 1136 閱讀 1148

大家還記得以前asp中recordset那方便易用的分頁功能嗎?pagesize,absolutepage,pagecount這些屬性的存在大大的方便了頁面的編排。而asp.net的dataset卻沒有提供相應的方法來進行分頁。不過,通過簡單的程式,也可以讓dataset實現分頁功能。

先來回憶一下recordset是怎麼分頁的,先是把資料放在recordset裡面,然後設定pagesize,和pagecount的值,這樣recordset就會自動把自己存放的資料按段進行劃分,然後根據absolutepage的值來決定當前頁是顯示哪一段資料。

在asp.net中,通過dataset來完成上面的程式也很簡單,同樣是先把資料庫裡的資料分段,然後分次存到dataset中。其中關鍵是怎麼實現分次儲存,dataadapter的fill方法有乙個過載的用法:fill(dataset,int,int,string),中間的兩個int分別是資料表中記錄開始的地方和要儲存的記錄數,通過這個方法就可以完成這個工作。

int pagesize=8;//

每頁要顯示的記錄數

int absolutepage=1;//

要設定的當前頁

//計算當前頁

if(request["page"]!=null)

int pagecount;//

總頁數int rowstart;//

資料庫中分段記錄開始的地方

//計算總記錄數

ada.fill(ds,"counts");

int rowcount=ds.tables["counts"].rows.count;

//計算總頁數

int n=rowcount/pagesize;

if(rowcount==pagesize*n)

pagecount=n;

else

pagecount=n+1;

//計算記錄開始數,也就是分段的起始部分

rowstart=pagesize*(absolutepage-1);

//把當前的記錄段內的記錄填加到dataset中,然後就把資料繫結到某個容器控制項,比如repeater和datalist

上面就是程式的主要部分。一步步的做下來,其中原本在asp中由recordset自動完成的事情,在這裡變成由我們自己完成。最後提供了兩個頁和頁之間連線的方法。

用DataSet讀取xml檔案

假如,有乙個這樣的xml檔案 0廣告集錦 239駿篇 flv flvimg 用心演繹.jpg flv 用心演繹.flv flv 用心演繹.flv 01 01 239238 拍攝花絮 flv flvimg 拍攝花絮.jpg flv 拍攝花絮.flv flv 拍攝花絮.flv 04 34 2381 fl...

DataSet與DataTable基本用法

在設計資料庫操作或者xml操作等 資料時,我們難免要跟dataset和datatable打交道,我們這裡就介紹下這幾個類的用法 首先介紹datatable,其實就是乙個二維 沒那麼懸乎,舉個構造的例子 datatable dt new datatable customers dt.columns.a...

用DataSet強型別修改字段入門2

private static void 修改紀錄中的字段 data 0 會員名 data 0 會員名 base adapter.update data console.writeline 修改後的第乙個會員名 data 0 會員名 結果如下 需要注意的事,每次修改的第一項可能不一樣,因為資料庫修改以...