我以这种方式处理了我的SqlConnection
:
sqlcon.open();
sqlcom.ExecuteNonQuery();
sqlcom.close();
但我对这种处理方式并不满意。
using
会为您处理。在引擎盖下,SqlConnection.Dispose()
调用SqlConnection.Close()
方法,SqlCommand.Dispose()
调用SqlCommand.Close()
。
作为附加背景,using statement
是try ... finally
的语法糖,用于在finally
中处置IDisposable
对象。
究竟是什么让你感到不满意?代码中的一切都很好,除了你可以把它放在 using-语句中以确保即使在出现错误时也能处理它 - 例如异常:
using (var sqlconn = new ...)
using (var sqlcom = new ...)
{
sqlcon.open();
sqlcom.ExecuteNonQuery();
}
这种方式Dispose
(自动调用Close
(在离开using
时被调用,无论是以通常的方式还是通过异常方式