使用块是否会关闭数据库连接?

时间:2011-03-09 09:03:09

标签: c# database using

using (DbConnection conn = new DbConnection())
{
    // do stuff with database
}

using阻止调用conn.Close()

4 个答案:

答案 0 :(得分:50)

是的,它会; DbConnection.Dispose()调用Close()的实现(以及它的派生实现)。

答案 1 :(得分:5)

是 - http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.close.aspx

编辑:来自Microsoft:“连接在使用块结束时自动关闭。”

答案 2 :(得分:4)

肯定是的,因为它会处理连接,在处理连接的内部逻辑之前调用close。

答案 3 :(得分:4)

using块将通过调用Dispose()方法确保销毁DbConnection对象。 Dispose()方法将依次调用Close()方法,并且必须等待它完成关闭与数据库的连接。