一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Asp.net 通用萬(wàn)級(jí)數(shù)據(jù)分頁(yè)代碼[修正下載地址]

1.主題,ASP.NET環(huán)境下,通用的數(shù)據(jù)分頁(yè)(包括Oracle,SqlServer,DB2...)
很久以前,就想做一個(gè)通用點(diǎn)的數(shù)據(jù)分頁(yè)組件,但苦于一直沒(méi)有充足的時(shí)間,所以遲遲沒(méi)有實(shí)現(xiàn)(當(dāng)然,主要是因?yàn)橛幸欢ǖ碾y度,要處理視圖狀態(tài),回傳事件,自繪等...),"十一"期間,陪女朋友去了躺"湘西",白天游山玩水,晚上無(wú)事,吃吃當(dāng)?shù)氐囊瓜?無(wú)聊之際,google了一把Oracle的數(shù)據(jù)分頁(yè),竟然沒(méi)有一個(gè)完整的關(guān)于ASP.NET + Oracle數(shù)據(jù)分頁(yè)的例子,要不就是有版本問(wèn)題,索性決定自己弄一個(gè).
2.環(huán)境
IDE;vs2008+ASP.NET2.0 or 3.0+Oracle9i
Oracle測(cè)試數(shù)據(jù);41萬(wàn)多條
帶寬;網(wǎng)通說(shuō)是有2M的帶寬,其實(shí)TNND只有100多KB
3.原理
利用Oracle9i的RowNum獲取我們想要的數(shù)據(jù),如圖3.1
復(fù)制代碼 代碼如下:
public IEnumerable GetPageSqlByOracle(string sql, int startRowIndex, int maximumRows, string orderBy)
{
string sqlFormat = string.Format("select * from (select rownum rn, pageTable.* from {0} pageTable where rownum <={1}) where rn>{2}", sql, startRowIndex + maximumRows, startRowIndex);

return ydjwOracleConn.RetriveDataSet(sqlFormat).Tables[0].DefaultView;
}

startRowIndex表示開始索引,maximumRows表示要獲取的每頁(yè)記錄數(shù)目.

然后把分頁(yè)后的數(shù)據(jù)綁定到ObjectDataSource組件,如下圖

    

4.效果

 

4.1 支持多排序,比如時(shí)間,比如身份證明號(hào)碼等

4.2 41萬(wàn)多條數(shù)據(jù)

4.3 單條件查詢,第一次用時(shí)1.547秒

4.4 第二次,用時(shí)1.515秒

第三次差不多,就不貼了.

4.5 看看不帶條件的查詢,一次把41萬(wàn)條數(shù)據(jù)全部查詢出來(lái)使用的時(shí)間

可以看到,不帶條件查詢41萬(wàn)條數(shù)據(jù),第一次用時(shí)1.265秒.


4.6 可以看到不帶條件查詢41萬(wàn)條數(shù)據(jù),第二次用時(shí)1.156秒
4.7 可用SqlServer,或者Db2等數(shù)據(jù)庫(kù)代替,只需要修改 圖3.1獲取數(shù)據(jù)的方法,其他地方不用動(dòng).
5.需要注意的地方
5.1 記得數(shù)據(jù)量上萬(wàn)時(shí),一定要加索引,否則要等得"花謝花開".
5.2 ObjectDataSource的所有參數(shù)名稱,一定要和綁定的方法參數(shù)名稱,順序一致.
5.3 能用緩存的,盡量用緩存
5.4 SqlServer的分頁(yè)算法,就不說(shuō)了,替換一下圖3.1的方法就行
5.5 因?yàn)閿?shù)據(jù)庫(kù)文件實(shí)在太大,不方便下載,有興趣的朋友自己弄一張表就OK,加上webconfig中的數(shù)據(jù)庫(kù)連接配置
6.下載
測(cè)試Demo下載 http://xiazai.jb51.NET/200810/yuanma/TestDataBindControlls.rar 【已修正】
7.后話
該說(shuō)的都說(shuō)了,希望對(duì)大家能有所幫助啟發(fā),還有就是此測(cè)試Demo還沒(méi)有加緩存,有興趣的朋友可以加上,歡迎大家討論,批評(píng),指導(dǎo)...

AspNet技術(shù)Asp.net 通用萬(wàn)級(jí)數(shù)據(jù)分頁(yè)代碼[修正下載地址],轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 精品在线视频播放 | 韩国免费毛片 | 久久综合色婷婷 | 91国在线视频 | 免费成年人在线观看视频 | 久久综合狠狠色综合伊人 | 正在播放一区 | 97香蕉超级碰碰碰久久兔费 | fefe66毛片免费看 | 国产乱理论片在线观看理论 | 一二三四视频社区在线中文 | 一区二区三区在线免费视频 | 777狠狠 | 精品成人免费播放国产片 | 六月婷婷久香在线视频 | 久久九九国产精品怡红院 | 婷婷免费视频 | 欧美一区二区自偷自拍视频 | 我被黑人巨大开嫩苞在线观看 | 一区二区三区视频免费 | 亚洲视频一二区 | 激情五月婷婷开心 | 狠狠色噜噜狠狠狠四色米奇 | 88av色| 欧美特黄高清免费观看的 | 国产在线91区精品 | 一区视频| 久久婷婷影院 | 国内精品一区二区2021在线 | 97人人超人超人国产第一页 | 午夜黄色| 黄 色 成 年人在线 黄 色 免 费 网站在线观看 | 一级毛片成人免费看免费不卡 | 久久国产免费一区二区三区 | 97色伦图片在线观看 | 中文字幕有码热在线视频 | 美女一级毛片毛片在线播放 | 国产精品100页 | 亚洲区激情区图片小说区 | 激情国产视频 | 国产中文在线视频 |