gpt4 book ai didi

c# - 查找所有打开的 SqlConnection

转载 作者:行者123 更新时间:2023-11-30 15:33:33 26 4
gpt4 key购买 nike

我在另一台服务器上读取和写入数据到 Sql Server,因此我需要打开许多 SqlConnection,我在读取或写入完成后关闭它们,但有时我无法连接到服务器但是在我重新启动服务器后一切正常,我猜这是因为一些 SqlConnection 是打开的,有什么方法可以找到所有这些如果存在的话?

最佳答案

简短的回答是“不”。您可以这样做的唯一方法是明确添加您自己的跟踪代码,但是您实际上正在做的是冒着持有它们更长时间的风险,而且很可能你忘记将它添加到你已经忘记关闭东西的 2 个地方。

此处首选的“修复”是:停止担心关闭 事物,而是开始使用 它们。如果您使用 using 每次 连接,您不能忘记释放它。

using(var conn = whatever.GetOpenConnection()) {
// ... do stuff
} // <=== here it will be disposed for us automatically, success or failure
// and disposable includes Close()

这同样适用于实现 IDisposable任何类型。对于 ADO.NET,这也包括命令和读取器。

关于c# - 查找所有打开的 SqlConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17403392/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com