【发布时间】:2016-02-13 22:47:54
【问题描述】:
我通常使用下面的代码,应该是对的吗?
using (SqlConnection myConn = new SqlConnection(ConnectionString))
{
using (SqlCommand cmd = new SqlCommand(sqlString, myConn))
{
myConn.Open();
rows = cmd.ExecuteNonQuery();
}
// TO DO .
}
哪个更喜欢?请告诉我它们之间的区别。在我看来:当 Pooling 为 false 时, close 和 dispose 都会关闭连接。当 Pooling 为 true 时 close 不会关闭集合,但 dispose 会。
【问题讨论】:
-
“关闭收藏” ??你的意思是连接。如果启用池,
Close不会关闭物理连接,而只是告诉池该连接已准备好使用。无论如何,您应该更喜欢using声明所有实现IDisposable的东西。connection.Dispose将隐式调用connection.Close。 -
谢谢老哥,我明白了