成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

對于VS 2003DataGrid建立的一些困難與解決辦法

開發(fā) 后端
我的觀點(diǎn):Repeater 要比VS 2003DataGrid的效率好,不測試不知道,一測試可真要命啊!我用的VS2003自帶的那個壓力測試軟件測試了一下二者的性能,用每秒可以支持的訪問人數(shù)來作為衡量標(biāo)準(zhǔn)。

本章講的是VS 2003DataGrid的介紹與技巧,怎樣創(chuàng)建VS 2003DataGrid。這些內(nèi)容都是我花了幾個月的時間查閱資料并向IT精英們學(xué)習(xí)出來的,中間可能有不少錯誤是我沒有挑出的,歡迎大家指正。

但是結(jié)果卻出乎我的意料,DataGrid 的效率 要比 Repeater高!詳細(xì)說一下我的測試方法,請大家看看我的測試方法有沒有什么問題,如果沒有什么問題的話,那么發(fā)生這種想象的原因是什么呢?

硬件:cpu:AMD XP2000+ 、80G硬盤、512M內(nèi)存。軟件:windows 2003 + sp1 、VS2003 、SQL Server 2000 + sp4測試數(shù)據(jù):顯示一張表(城市表)里的數(shù)據(jù),4個字段,349條記錄。測試目的:網(wǎng)站的頁面里面顯示數(shù)據(jù)的效率。只測試顯示數(shù)據(jù)的功能,不管其他的方面

VS 2003DataGrid 使用自動填充,repeater的代碼:

  1. <table id="DG" > 
  2. <asp:repeater id="Rpt_Test" runat="server"> 
  3. <ItemTemplate> 
  4. <tr> 
  5. <td><%# DataBinder.Eval(Container, "DataItem.CityID")%>td> 
  6. <td><%# DataBinder.Eval(Container, "DataItem.ProvinceID")%> 
  7. td> 
  8. <td><%# DataBinder.Eval(Container, "DataItem.City")%> 
  9. td> 
  10. <td><%# DataBinder.Eval(Container, "DataItem.AeraCode")%> 
  11. td> 
  12. tr> 
  13. ItemTemplate> 
  14. asp:repeater>table> 

常看到一些文章說 repeater 比 VS 2003DataGrid 的性能要好,但是,我的測試結(jié)果是怎么回事呢?

測試結(jié)果:

顯示 10條記錄 ,沒有 ViewState ,DataTable 綁定控件,DataGrid使用綁定列。

1、 DataGrid : 250 rps 左右。

2、 Repeater : <%# DataBinder.Eval(Container, "DataItem.CityID")%>方法: 200 rps 左右。

3、Repeater : <%# ((DataRowView)Container.DataItem)["CityID"] %>方法 : 250 rps 多一點(diǎn)點(diǎn)。

4、Repeater : <%# ((DataRowView)Container.DataItem)[0] %>方法 : 250 rps 多一點(diǎn)點(diǎn)。

其中 3、4 是我剛找到的一種綁定數(shù)據(jù)的方法。看來是 <%# DataBinder.Eval(Container, "DataItem.CityID")%>這種綁定方法效率太低了。

一般的綁定方法<%# DataBinder.Eval(Container.DataItem, "字段名") %>用DataBinder.eval 綁定不必關(guān)心數(shù)據(jù)來源(Dataread或dataset)。不必關(guān)心數(shù)據(jù)的類型eval會把這個數(shù)據(jù)對象轉(zhuǎn)換為一個字符串。在底層綁定做了很多工作,使用了反射性能。#t#

正因?yàn)槭褂梅奖懔耍珔s影響了數(shù)據(jù)性能。來看下<%# DataBinder.Eval(Container.DataItem, "字段名") %>。當(dāng)于dataset綁定時,DataItem其實(shí)式一個DataRowView(如果綁定的是一個數(shù)據(jù)讀取器(dataread)它就是一個 IdataRecord。)因此直接轉(zhuǎn)換成DataRowView的話,將會給性能帶來很大提升。

對數(shù)據(jù)的綁定建議使用<%# ctype(Container.DataItem,DataRowView).Row("字段名") %>。數(shù)據(jù)量大的時候可提高幾百倍的速度。使用時注意2方面:1.需在頁面添加<%@ Import namespace="System.Data"%>.2.注意字段名的大小寫(要特別注意)。如果和查詢的不一致,在某些情況下會導(dǎo)致比< %# DataBinder.Eval(Container.DataItem, "字段名") %>還要慢。如果想進(jìn)一步提高速度,可采用<%# ctype(Container.DataItem,DataRowView).Row(0) %>的方法。不過其可讀性不高。

責(zé)任編輯:chenqingxiang 來源: NET130
相關(guān)推薦

2009-11-30 13:51:28

VS2003 Acti

2009-12-01 09:06:36

VS2003 ajax

2009-12-01 16:16:13

安裝VS2003

2009-11-26 13:40:53

2009-12-01 10:18:12

VS2003makef

2009-11-27 09:34:38

VS2003命令

2009-11-30 13:51:28

VS2003 Runt

2009-12-01 14:44:46

VS2005 PRO

2009-11-30 13:40:43

VS 2003 Boo

2009-11-30 13:51:28

VS2005 菜單

2009-06-25 09:50:32

JSF

2009-11-30 10:41:36

VS2003無法啟動調(diào)

2009-11-27 13:04:16

VS2005遠(yuǎn)程調(diào)試

2009-11-30 09:39:46

VS2003版本

2009-11-26 16:46:08

VS2003編譯

2009-11-30 11:05:19

VS2003 WebS

2009-11-30 17:28:39

VS2003 ASP

2009-11-25 13:35:05

VS2003使用

2009-11-25 16:35:25

VS 2003系統(tǒng)

2009-11-30 10:34:28

VS2003編譯
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 水蜜桃久久夜色精品一区 | 中文字幕视频在线 | 一级免费毛片 | 久久精品亚洲欧美日韩久久 | 亚洲国产高清高潮精品美女 | 99热这里都是精品 | 国产亚洲网站 | 一区二区国产精品 | 2022精品国偷自产免费观看 | 亚洲精品久久久久久宅男 | 午夜视频免费在线 | 怡红院成人在线视频 | 丝袜 亚洲 另类 欧美 综合 | 日本在线观看网址 | 亚洲精品国产第一综合99久久 | 一级毛片视频在线 | 99自拍视频 | 男人影音 | 日韩欧美在线一区 | 亚洲精品久久久一区二区三区 | 国产精品久久久久久久久久免费看 | 亚洲男人网 | 日韩一区在线播放 | 欧洲一区在线观看 | 国产一区二区三区在线看 | 成人午夜视频在线观看 | 日韩精品一区二区三区中文字幕 | 国产一级视屏 | 国产成人精品一区二区三区在线 | 一二三四在线视频观看社区 | 久久噜噜噜精品国产亚洲综合 | 久久综合久色欧美综合狠狠 | 97久久精品 | 成人在线播放网站 | 国产精品入口麻豆www | 99资源| 全免费a级毛片免费看视频免费下 | 亚洲午夜精品一区二区三区 | 亚洲综合一区二区三区 | 欧美色人 | 亚洲精品一区二区 |