A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 戴鑫凯 中级黑马   /  2013-2-24 15:53  /  1354 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

就是 Close() 和 Dispose()
  例如在ado.net中  
SqlConnection conn = new SqlConnection(connStr);
conn.Dispose(); 与 conn.Close();的区别

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

3 个回复

倒序浏览
sql的close连接关闭后还可以打开,必须Dispose注销掉就不能打开
using在除了作用域以后调用Dispose, SqlConnection,FileStream等的Dispose内部都会做这样的判断:判断有没有close,如果没有Close就是先Close后再Dispose
dispone()包括了close()操作, 和 注销连接的操作
close()只是关闭连接, 还可以打开

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
conn.Close(); 只是断开连接,可继续使用conn.Open();

conn.Dispose(); 释放资源后使用conn.Open();的话会异常

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
如果用using(SqlConnection conn = new SqlConnection(connStr);
){
           conn.open();
}
这样更好,这样的话直接关闭和释放空间。而且安全。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马