日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當(dāng)前位置:雨林木風(fēng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁(yè)面

對(duì)于何種情況下運(yùn)用DataGrid、DataList或Repeater的一些討論(2)

對(duì)于何種情況下運(yùn)用DataGrid、DataList或Repeater的一些討論(2)

更新時(shí)間:2019-05-30 文章作者:未知 信息來(lái)源:網(wǎng)絡(luò) 閱讀次數(shù):

[DataGrid控件]



  在三種控件當(dāng)中,DataGrid是迄今為止功能最為豐富的,但也是最不靈活的控件。這種在輸出HTML時(shí)不夠靈活的特點(diǎn)是因?yàn)樗畛蹙褪潜辉O(shè)計(jì)成以表格的形式輸出數(shù)據(jù)。每一條記錄輸出時(shí)會(huì)建立一對(duì)<tr>標(biāo)簽,而每個(gè)字段的值輸出時(shí)則建立一對(duì)<td>標(biāo)簽。

  DataGrid含有幾個(gè)屬性可以提高其可用性。如,通過(guò)設(shè)置DataGrid的AllowSorting屬性為true,并加入少量代碼,DataGrid就具備了按不同字段排序的功能。此外,設(shè)定相關(guān)屬性來(lái)實(shí)現(xiàn)分頁(yè)以及單條記錄編輯的功能更加增強(qiáng)了DataGrid的可用性。

  除了在可用性方面的支持以外,DataGrid同時(shí)也相當(dāng)節(jié)省開發(fā)時(shí)間。使用DataGrid在WEB頁(yè)面上顯示數(shù)據(jù)只需要兩行代碼。一行用來(lái)設(shè)定與DataGrid綁定的數(shù)據(jù)源(DataSource),另一條則用來(lái)執(zhí)行綁定命令(DataBind())。當(dāng)然,在Repeater中實(shí)現(xiàn)這樣的功能并非不可能,只是,相比較使用DataGrid而言,你需要花費(fèi)相當(dāng)多的時(shí)間和精力來(lái)實(shí)現(xiàn)這些功能。

  盡管DataGrid有這樣那樣令人印象深刻的優(yōu)點(diǎn),它的兩個(gè)缺點(diǎn)也同樣不能忽視。首先,如前所述,DataGrid在個(gè)性化輸出數(shù)據(jù)方面功能有限。當(dāng)然,你可以定制字體、顏色以及線條寬度等等,但它始終只能是HTML表格。

  每個(gè)在DataGrid中的列都是DataGridColumn類的一個(gè)實(shí)例。有五種DataGrid列的形式:

  ·BoundColumn

  ·ButtonColumn

  ·EditColumn

  ·HyperLinkColumn

  ·TemplateColumn

  每種類型都會(huì)以一種方式允許頁(yè)面訪問(wèn)與DataGrid進(jìn)行交互。例如,BoundColumn將DataSource的字段值顯示為純文本;而HyperLinkColumn則將之顯示為一個(gè)超級(jí)鏈接。另外,開發(fā)者可以通過(guò)寫一個(gè)繼承自DataGridColumn的自定義類來(lái)定制DataGrid列的樣式。

  盡管DataGrid具有這么多的增強(qiáng)可用性的屬性,卻仍然顯得死板而不夠靈活。這是因?yàn)椋徽撌裁礃拥膶傩裕夹枰獙?duì)DataGrid所生成的表格進(jìn)行相關(guān)的設(shè)置而生效。這無(wú)疑會(huì)使表格變得臃腫而失去靈活性。例如,DataGridColumn的設(shè)置會(huì)對(duì)表格的每一行的相應(yīng)列生效。DataGrid的這種局限性阻礙了更有創(chuàng)意地顯示數(shù)據(jù)。比如,你希望每五條記錄被顯示在一行,或根本不想要表格來(lái)顯示數(shù)據(jù),你將不得不放棄使用DataGrid。

  DataGrid的第二個(gè)缺陷是它的性能。在三種數(shù)據(jù)控件中,DataGrid是相對(duì)性能最差的。由DataGrid所生成的ViewState將會(huì)相當(dāng)龐大,特別是在DataGrid含有較多的行時(shí)。當(dāng)然,你也可以關(guān)閉ViewState功能,但代價(jià)是你將不能使用排序、分頁(yè)以及記錄編輯等功能。

  為了測(cè)量DataGrid的性能,我使用了微軟的Web Application Stress Tool (WAST)。精確的測(cè)試條件設(shè)定以及測(cè)試用代碼將會(huì)在本文的結(jié)尾給出。

  WAST將會(huì)對(duì)WEB服務(wù)器發(fā)出對(duì)一個(gè)特定URL的請(qǐng)求。每個(gè)測(cè)試將會(huì)針對(duì)一個(gè)URL在一分鐘之內(nèi)連續(xù)不斷地請(qǐng)求。WAST將會(huì)一個(gè)代表性能的數(shù)值,代表WEB服務(wù)器將會(huì)在一秒鐘內(nèi)執(zhí)行ASP.Net頁(yè)面多少次。

  兩個(gè)測(cè)試將顯示一個(gè)僅僅顯示數(shù)據(jù)的DataGrid。DataGrid將會(huì)顯示Northwinds數(shù)據(jù)庫(kù)中的Customers表的4個(gè)字段的內(nèi)容(總計(jì)91條記錄)。DataGrid的AutoGenerateColumns屬性將會(huì)被設(shè)為True。第一個(gè)測(cè)試將DataGrid置于一個(gè)Form中,第二個(gè)則不置于Form中。將控件置于Form中而不指定其EnableViewState為False,則控件將會(huì)一直使用ViewState來(lái)維持其狀態(tài)。對(duì)ViewState的設(shè)定是為了有一個(gè)耗時(shí)的處理過(guò)程,來(lái)看一下它對(duì)于每秒種的頁(yè)面請(qǐng)求有什么樣的影響。測(cè)試結(jié)果見(jiàn)圖1。







圖1:對(duì)DataGrid的每秒請(qǐng)求次數(shù)



  在下面我們要討論并測(cè)試的DataList和Repeater中,我們會(huì)看到它們的性能將優(yōu)于DataGrid。

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

主站蜘蛛池模板: 夜夜爽日日澡人人添 | 亚洲欧美精品天堂久久综合一区 | 国产精品黄色 | 女猛烈无遮挡性视频免费 | 99热久久这里只有精品23 | 午夜影院在线 | 国产福利视频一区二区三区四区 | 干干人人| 国产精品一区二区三区高清在线 | 久久久久久久国产精品 | 女bbbbxxxx另类亚洲 | 久久99热这里只有精品7 | 欧美日韩精品国产一区在线 | 国产成人精品亚洲日本在线观看 | 国产综合激情在线亚洲第一页 | 天天看天天摸色天天综合网 | 手机看片免费福利 | 在线免费观看国产精品 | 国产日韩欧美精品一区二区三区 | 久久中文网中文字幕 | 成人在线观看网址 | 精品国产一区二区三区麻豆小说 | 亚洲区视频在线观看 | 人人天天爱天天做天天摸 | 天天综合久久久网 | 爱爱www在线观看视频高清 | 青青操综合| 内衣办公室动漫久久影院 | 99精品wwxx在线观看 | 色欧美与xxxxx | 国产精品日日摸夜夜添夜夜添1 | 欧美在线一级精品 | 国产精品久久久久久影院 | 成年人网站免费 | 99久久精品免费看国产免费软件 | 日日摸夜夜添夜夜 | 国产精品伦一区二区三级视频 | 日本免费三级网站 | 欧美一级午夜免费视频你懂的 | 成人在线精品视频 | 亚洲国产成人影院播放 |