国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > .NET > 正文

asp.net 分頁(yè)潛談

2020-01-18 01:16:27
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
要做出分頁(yè)效果不外乎有這幾個(gè)方向入手,從數(shù)據(jù)源、從服務(wù)器或者從客戶(hù)端。不管你是怎么做都跳不出這三個(gè)地方(其實(shí)B/S結(jié)構(gòu)的開(kāi)發(fā)了就是在這三個(gè)地方做文章,只不過(guò)有些微變化而已)。

先說(shuō)說(shuō)從數(shù)據(jù)源入手的吧。一想到數(shù)據(jù)源做分頁(yè),自然是T-SQL了。什么存儲(chǔ)過(guò)程,視圖、特殊函數(shù)(當(dāng)然,這里指的只是我熟悉的MS)。能用到的SQL知識(shí)都往上砸。具體的實(shí)現(xiàn)就不說(shuō)了,忒Easy。代碼部分基本沒(méi)有什么,只要每次更改T-SQL語(yǔ)句就行了。不好的就是太受數(shù)據(jù)庫(kù)的限制,程序中一丁點(diǎn)的變化,所有有關(guān)SQL的地方都要變,有些甚至要改變數(shù)據(jù)庫(kù)的結(jié)構(gòu)。沒(méi)有扎實(shí)的數(shù)據(jù)庫(kù)知識(shí)是萬(wàn)萬(wàn)不行了。

服務(wù)器端做分頁(yè)可能是行家們最常用到的方法了。因?yàn)橛邪b好的數(shù)據(jù)綁定控件啊!拿來(lái)就可以用。但是,那么說(shuō)微軟是大佬級(jí)人物呢,做個(gè)東西都深謀遠(yuǎn)慮。把菜鳥(niǎo)跟恐龍都考慮在內(nèi)。你如果是菜鳥(niǎo)就用GridView,內(nèi)置的分頁(yè)讓你幾乎不用寫(xiě)代碼就能實(shí)現(xiàn)。但如果你是恐龍那就用ListView或DataList等控件,絕對(duì)能讓你的技術(shù)發(fā)揮的淋漓盡致。微軟為了給這些人個(gè)臺(tái)階下,就又開(kāi)發(fā)出了DataPager控件。他好像只認(rèn)IPageableItemContainer接口。緊接著就又有了AspNetPager控件,這就給所有數(shù)據(jù)綁定控件又一個(gè)分頁(yè)的機(jī)會(huì)。不過(guò)AspNetPager與DataPager不同,AspNetPager只有分頁(yè)的UI部分,并不能單獨(dú)完在數(shù)據(jù)的分頁(yè)功能。其實(shí)大家一定會(huì)問(wèn),為什么我們不能做自己的分頁(yè)控件呢?這好像不是微軟的原則啊?哈哈,別誤會(huì)微軟。其實(shí)早就有這個(gè)方法了,只是少有人問(wèn)津。這就是PagedDataSource。他是沒(méi)有UI的,微軟所有分頁(yè)的控件都是擴(kuò)展于他的,包括最早的GridView。有了他,我們就可以隨心所欲的做自己的分頁(yè)控件了。如果把AspNetPager和PagedDataSource結(jié)合起來(lái)用,那就是如虎添翼。

再說(shuō)說(shuō)客戶(hù)端的分頁(yè)吧。在以前,客戶(hù)端做分頁(yè)無(wú)疑就是胖客戶(hù)端。把所有數(shù)據(jù)都存到頁(yè)面,用js控制顯示順序。少量數(shù)據(jù)還可以忍受,數(shù)據(jù)一多,那就是謀殺。不過(guò),自從AJAX的出現(xiàn),改變了這一現(xiàn)象。雖然也少不了的與服務(wù)器交互,但總比干等著強(qiáng)吧?這方面.net也表現(xiàn)不錯(cuò)。有了UpdatePanel,一切盡在不言中啊。
以上三個(gè)方向都可以很好的完成分頁(yè)功能,但誰(shuí)好誰(shuí)壞也不是我一個(gè)人就能決定的,還要看個(gè)人的喜好。不過(guò),有一人原則不能忽略,那就是“大道至簡(jiǎn),適可而止”。相信,每個(gè)人都有自己的一番體會(huì)的。
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 太仓市| 固安县| 宝山区| 兴义市| 新津县| 鄢陵县| 南澳县| 高密市| 富顺县| 遂川县| 广南县| 巴南区| 门头沟区| 曲阜市| 新野县| 蛟河市| 江华| 通辽市| 陕西省| 赣榆县| 南昌市| 萨嘎县| 河津市| 定结县| 浮梁县| 杂多县| 蕉岭县| 宜春市| 浦县| 凌海市| 合江县| 台东市| 长汀县| 靖州| 特克斯县| 玉屏| 虞城县| 天台县| 明光市| 淳安县| 通海县|