SqlConnection就一定要关闭吗?

水失雨唱处13
推荐于2018-04-13 · TA获得超过5281个赞
知道小有建树答主
回答量:959
采纳率:0%
帮助的人:1832万
展开全部
按照ms的说法,数据库连接属于非托管资源,在.net下使用后一定要close,这样才能避免资源泄露。其实我并不这么认为 具体的实践如下: 1、建立一个从ServicedComponent继承的类 2、声明使用对象池 3、在该类的构造函数中打开对数据库的连接,并声明不使用ado.net提供的连接池。应该在该函数中尽量把所有初始化工作做完,这样可以更好地利用对象池 4、如果该类的方法不会被client频繁调用,那么应该声明JITA 5、写数据库访问相关方法,对数据库操作后,不关闭SqlConnection 6、重写CanBePooled方法,如果SqlConnection是open的状态,那么就声明可以被pooled 7、写client调用方法,对刚才写好的类的数据库访问方法进行调用,调用后一定要dispose该类,以便通知对象池回收
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式