知识大全 Repeater控件测试Web控件的执行效率

Posted

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Repeater控件测试Web控件的执行效率相关的知识,希望对你有一定的参考价值。

Repeater控件测试Web控件的执行效率  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  测试环境:SDK +vs +Sql +WindowXp

  建立测试工程

  新建页面 使用Web控件Repeater:

  HTML页面

  <%@ Page Language= C# AutoEventWireup= true   CodeFile= Default aspx cs Inherits= _Default %>

  <!DOCTYPE PUBLIC //W C//DTD XHTML Transitional//EN transitional dtd >

  < xmlns= >

  <head runat= server >

  <title>使用Web控件</title>

  </head>

  <body>

  <form id= form runat= server >

  <div>

  <asp:Repeater ID= Repeater runat= server >

  <ItemTemplate>

  <%#Eval( Comp_Name ) %> <%#Eval( Comp_ID ) %><br />

  </ItemTemplate>

  </asp:Repeater>

  </div>

  </form>

  <%=(System Environment TickCount ts) %>

  </body>

  </>

  CS文件:

  protected int ts;

  protected void Page_Load(object sender EventArgs e)

  

  ts = Environment TickCount;

  string connstring = System Configuration ConfigurationManager ConnectionStrings[ ConnStr ] ToString();

  SqlConnection myconn = new SqlConnection(connstring);

  SqlCommand cmd = new SqlCommand( select * from TB_Info myconn);

  myconn Open();

  SqlDataReader dr = cmd ExecuteReader();

  Repeater DataSource = dr;

  Repeater DataBind();

  dr Close();

  dr Dispose();

  myconn Close();

  myconn Dispose();

  

  按F 执行 数据量约 条 多次测试耗时在 ms附近浮动

  新建页面 不使用Web控件

  HTML代码:

  <%@ Page Language= C# AutoEventWireup= true CodeFile= Default aspx cs Inherits= Default %>

  <!DOCTYPE PUBLIC //W C//DTD XHTML Transitional//EN transitional dtd >

  < xmlns= >

  <head runat= server >

  <title>不使用Web控件</title>

  </head>

  <body>

  <form id= form runat= server >

  <div>

  <%while (dr Read()) %>

  <%=dr[ Comp_Name ]%> <%=dr[ Comp_ID ]%><br />

  <%  %>

  </div>

  </form>

  <%

  dr Close();

  dr Dispose();

  myconn Close();

  myconn Dispose();

  %>

  <%=(System Environment TickCount ts) %>

  </body>

  </>

  CS代码

  

  protected int ts;

  protected SqlConnection myconn;

  protected SqlDataReader dr;

  protected void Page_Load(object sender EventArgs e)

  

  ts = Environment TickCount;

  string connstring = System Configuration ConfigurationManager ConnectionStrings[ ConnStr ] ToString();

  myconn = new SqlConnection(connstring);

  SqlCommand cmd = new SqlCommand( select * from TB_Info myconn);

  myconn Open();

  dr = cmd ExecuteReader();

  

  F 测试 数据量约 条 执行时间在 MS以下

  下面截图是多次测试的数据比较

  

    

  Default aspx是使用web控件的页面 Default aspx是未使用web控件的页面 从上图可以看出 不仅在执行效率上存在差距 而且在数据大小上也存在很大的差距 在使用web控件的时候 为了保存当前状态 我们在源代码中发现一个<input type= hidden name= __VIEWSTATE id= __VIEWSTATE > 该隐藏域所保存的数据量是相当大的 所有页面数据会存在差距 好 那么我们把页面的<form runat= server >删除 使得它不能存在上面的隐藏域 再进行测试  

    

  

  从上图我们可以看到default aspx页面大小变小了很多 而且速率也提升了很多 然而性能整体上还是落后于default aspx 而且经多次测试发现 数据量越大 该差距越明显 当数据量少时 性能相差无几 但是如果考虑同时在线人数的话 那么性能的差别又会体现出来

  总结

cha138/Article/program/net/201311/13331

相关参考

知识大全 7.4.3 DataList和Repeater控件[3]

7.4.3DataList和Repeater控件[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 7.4.3 DataList和Repeater控件[2]

7.4.3DataList和Repeater控件[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 7.4.3 DataList和Repeater控件[4]

7.4.3DataList和Repeater控件[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 7.4.3 DataList和Repeater控件[1]

7.4.3DataList和Repeater控件[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 .net JS模拟Repeater控件的实现代码

.netJS模拟Repeater控件的实现代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  功

知识大全 实现DataList和Repeater控件的分页显示

实现DataList和Repeater控件的分页显示  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 自定义创建web验证控件

  做开发的都知道在VS里提供了很多的验证控件比如RequiredFieldValidatorRangeValidatorRegularExpressionValidator等等他们都是继承于Base

知识大全 .net Web用户控件使用技巧

.netWeb用户控件使用技巧  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    关于Web用户

知识大全 基于ASP.NET的Web动态控件创建

基于ASP.NET的Web动态控件创建  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要web

知识大全 使用Eclipse SWT控件开发WEB应用

使用EclipseSWT控件开发WEB应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!Smart