技术开发 频道

Asp.Net性能优化


 (五).字符串操作

    1.避免装箱操作. 装箱操作运行效率比较低.

    例如运行两个代码段:
stringtest=""; for(forinti=0;i<10000;i++) { test=test+i; } stringtest=""; for(forinti=0;i<10000;i++) { test=test+i.ToString(); }
下面的代码段显然效率要高.因为i是整型的,系统要先把i进行装箱转换为string型的,再进行连接.需要时间,读者可以Copy到自己机器上测试一下.

2.使用StringBulider类

在进行字符串连接时: stringstr=str1+str2+....;

一般超过三项连接,最好用StringBuilder来代替String类. StringBuilder可以避免重新创建String对象造成的性能损失.

一般用于组装Sql语句时用到:StringBulider.读者可以到自己机器上测试一下.

(六).ADO.Net使用方面优化

1.数据库连接打开和关闭。 在需要连接时打开,当访问完数据库要立刻关闭连接.

举例说明,还是看两个代码段:
I. DataSetds=newDataSet(); SqlConnectionMyConnection=newSqlConnection("server=localhost;uid=sa;pwd=;database=NorthWind"); SqlCommandmyCommand=newSqlCommand(strSql,MyConnection); SqlDataAdaptermyAdapter=newSqlDataAdapter(queryStr,connectionStr); MyConnection.Open(); //打开连接 for(inti=0;i<1000;i++) //for循环模拟取得数据前的商业逻辑操作 { Thread.Sleep(1000); } myAdapter.Fill(ds); for(inti=0;i<1000;i++) //for循环模拟取得数据后的商业逻辑操作 { Thread.Sleep(1000); } MyConnection.Close(); //关闭连接 II. DataSetds=newDataSet(); SqlConnectionMyConnection=newSqlConnection("server=localhost;uid=sa;pwd=;database=NorthWind"); SqlCommandmyCommand=newSqlCommand(strSql,MyConnection); SqlDataAdaptermyAdapte

0
相关文章