我怀疑在我们的一个应用程序中使用的数据库连接并不总是关闭。我去看了代码,发现了一个DataProvider
有SqlConnection
对象的类。连接在此类的构造函数中打开并在其Dispose
方法中关闭(不要判断,我知道保持打开的连接是邪恶的,这不是我的代码,也不是问题的重点)。该Dispose
方法是这样实现的:
protected virtual void Dispose(bool disposing)
{
if (!_disposed)
{
if (disposing)
{
if (_conn != null)
_conn.Close();
}
_disposed = true;
}
}
问题是:
它总是保证连接是关闭的吗?
这段代码对吗?
我认为应该_conn.Dispose()
调用 - 我是对的,它会影响不关闭连接(可能不会)吗?