我懷疑在我們的應用程序中使用的數據庫連接並不總是關閉。我去看代碼,我發現有一個DataProvider
類,它有SqlConnection
對象。連接在這個類的構造函數中打開,並關閉它的Dispose
方法(不要斷定,我知道保持開放連接是邪惡的,它只是不是我的代碼,它不是問題的關鍵)。該Dispose
方法來實現這樣的:在Dispose方法中關閉數據庫連接是否正確?
protected virtual void Dispose(bool disposing)
{
if (!_disposed)
{
if (disposing)
{
if (_conn != null)
_conn.Close();
}
_disposed = true;
}
}
的問題是:
是否始終保證連接被關閉?
這段代碼對嗎?
我認爲應該有_conn.Dispose()
叫 - 我是對的,它可能會影響不關閉連接(可能不是)?
如果您懷疑使用性能計數器進行檢查確認。 – RichardOD 2009-06-19 08:05:05
要檢查的關鍵值是NumberOfPooledConnections。 – RichardOD 2009-06-19 08:08:16