asp.net连接频繁打开关闭影响效率么?
我在用asp.net做网页的时候,喜欢把每块都做成用户控件,这样一个页面就有许多用户控件
每个用户控件都有
OleDbConnection myConn = new OleDbConnection(DataBaseFun.ConnString);
OleDbCommand myComm = new OleDbCommand(connStr, myConn);
try{
myConn.open();
OleDbDataReader myReader = myComm.ExecuteReader();
if(myReader.read())
{
....
}
myReader.close();
}finally{myConn.close();}
请问我这样语句合理么,还有什么资源要显示的释放么?
还有页面中的很多用户控件都有这样的语句,一个夜面就频繁的打开连接,关闭连接
这样影响效率么?
谢谢大家
------解决方案--------------------合理,连接池会帮你处理。
一般原则是,一个函数中打开,用完关闭。一个页面多少次都正常,但一个函数中最好别多次打开和关闭。
------解决方案--------------------有个技巧。
一些数据是可以不必时时更新的,就把数据从DataReader 转换成实体类。然后装进缓存
一定时间内只从缓存里拿数据,这样可以大量的减少数据库的负荷.
不要那么实在的每次都从数据库拿数据,这是提高效率的一个好办法
------解决方案--------------------要说没影响是不可能的,但是再频繁的打开关闭也比长开好