基本上,如果我执行以下操作:
using (IfxConnection connection = ConnectionManager.GetConnection())
{
connection.Open();
...
if (connection != null) connection.Close(); //Is this necessary?
}
注意:IfxConnection 是一个继承自 DBConnection 的 IBM 类。
我知道把它留在那儿不会有什么坏处,但我正处于清理并使我的代码尽可能高效的时刻,所以删除任何“额外”的东西会很好。 :)
最佳答案
如果 IBM 在 Dispose()
上清理并在其 IfxConnection
类中调用 Close()
,那么删除最后一个是安全的线。
根据docs ,是的,他们有。
基本上,您有两个选择:
- 使用
using()
或 - 放弃
using()
并尝试try{ ... } finally { if (connectionIsOpen) connection.Close()}
没有必要同时使用它们。
我会投票赞成使用 using()
。 (双关语);-)
只是不要重用 - 啊,又一次 ;-) - 已经处理的连接 - 但无论如何你不会那样做,对吗? :-)
关于C#/Informix : Do I need to explicitly call Close on my DB Connection if it's in a using statement?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4306819/