asp.Net性能优化(2)

来源:未知 责任编辑:责任编辑 发表时间:2015-09-16 20:04 点击:

  (四).避免使用DataGrid    
  大家都知道DataGrid功能强大。但是功能强大的同时,增加了性能上的开销。一般用 其它控件: DataList 或Repeater控件能实现的,尽量不用DataGrid.
  (五).字符串操作    
  1.避免装箱操作. 装箱操作运行效率比较低. 例如运行两个代码段:   
    string test="";    
    for(for int i=0;i<10000;i++)    
    {    
      test = test + i;    
    }   和    
    string test="";    
      for(for int i=0;i<10000;i++)    
    {           test = test + i.ToString();    
    }    
下面的代码段显然效率要高.因为i是整型的,系统要先把i进行装箱转换为string 型的,再进行连接. 需要时间,可以Copy到自己机器上测试一下.    
  2.使用StringBulider类。在进行字符串连接时: string str = str1 + str2 + ....;  一般超过三项连接,最好用StringBuilder来代替string类. StringBuilder可以避免重新创建string 对象造成 的性能损失. 一般用于组装sql语句时用到: StringBulider. 可以到自己机器上测试一下.    
  3.尽量少用: try  {} catch{}finally{} 语句.此语句执行效率比较低.    
  (六).ADO.Net使用方面优化    
  1.数据库连接打开和关闭。在需要连接时打开,当访问完数据库要立刻关闭连接. 举例说明,还是看两个代码段:    
  I.   DataSet ds = new DataSet();
    SqlConnection MyConnection = new SqlConnection("server=localhost; uid=sa; pwd=; database=NorthWind");    
    SqlCommand myCommand = new SqlCommand(strSql,MyConnection);    
    SqlDataAdapter myAdapter=new SqlDataAdapter(queryStr,connectionStr);    
    MyConnection.Open(); //打开连接    
    for(int i=0;i<1000;i++) //for循环模拟取得数据前的商业逻辑操作    
    {    
      Thread.Sleep(1000);    
    }    
    myAdapter.Fill(ds);    
    for(int i=0;i<1000;i++) //for循环模拟取得数据后的商业逻辑操作    
    {    
      Thread.Sleep(1000);    
    }    
    MyConnection.Close(); //关闭连接    
  II.  DataSet ds = new DataSet();    
    SqlConnection MyConnection = new SqlConnection("server=localhost; uid=sa;  pwd=; database=NorthWind");    
    SqlCommand myCommand = new SqlCommand(strSql,MyConnection);    
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • 浅析.NET下XML数据访问新机制
  • asp.net 面试+笔试题目第1/2页
  • C# 邮件地址是否合法的验证
  • asp.net 设置GridView的选中行的实现代码
  • C#高级编程:数据库连接[1]
  • ASP.NET&#160;GridView列表代码示例
  • 经典C++程序1
  • 微软ASP.NET站点部署指南(2):部署SQL Server Compact数据库
  • 微软ASP.NET站点部署指南(3):使用Web.Config文件的Transforma
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1