我正在使用MVC3 + Entity Framework 4.1应用程序,目前正在我的电脑上进行本地测试。
我想通过处理实体上下文来了解我是否已正确关闭所有连接。还有任何可用的方法,我可以看到目前有多少连接打开。我担心我没有正确关闭所有打开的连接。
或者有没有其他方法来检查我是否通过我的网络应用程序正确关闭所有数据库连接
答案 0 :(得分:4)
通常,ADO.NET不会手动打开/关闭物理数据库连接。框架处理了一个连接池。因此,当您执行new SqlConnection
时,您没有打开与数据库的新物理连接,而只是从池中绘制一个。当您调用connection.Close
时,您没有关闭连接,只需将其返回到连接池即可重复使用。
因此,对您来说重要的是确保您的代码尽可能短时间保持连接,并尽快将它们返回池中。您可以查看following article,其中了解有关连接池的更多详细信息。