作业帮 > 综合 > 作业

using(conn)是什么意思?怎么用?最好举例说明一下.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/01 12:19:29
using(conn)是什么意思?怎么用?最好举例说明一下.
看见这么一段代码:
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "insert into tableA values(1,'a','b');
using (conn)
{
conn.Open();
cmd.ExecuteNonQuery();
}
不是很明白,我在using外可可以访问到conn,那这么写的话这个using还有什么意义啊?
using(conn){
conn.Open();
cmd.ExecuteNonQuery();
}
的作用是确保在跳出大括号时,能释放conn对象占用的资源
等效于:
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
但是,using写法即使大括号里出现了异常,也能确保关闭连接,而后面一种写法,如果代码出现了异常,可能导致连接无法关闭
再问: 如果在using外写conn.Open();如: conn.Open(); using(conn) { cmd.ExecuteNonQuery(); } 大括号里边出现异常,conn对象也能释放么?
再答: 是