从.Net代码访问Oracle DB后正确清理

时间:2009-09-23 09:45:08

标签: .net oracle

这是使用system.data.oracleclient连接到oracle-server连接后自行清理的正确方法吗?

using System.Data.OracleClient;

var con = new OracleConnection("some connection string");
con.Open();
con.Close();
con = null;

2 个答案:

答案 0 :(得分:3)

OracleConnection实现了IDisposable,因此最好使用using构造。即。

using(var connection = new OracleConnection("connection string")) {
   // do stuff
}

这将确保即使出现错误也能关闭和处理连接。我没有看到任何理由使引用无效。它将超出范围并将被清除,因此不需要使用该IMO混乱代码。

答案 1 :(得分:1)

是的。
您可能还想在con.Dispose()之后致电Close。这样可以确保在不等待.NET垃圾收集器的情况下立即释放连接。

请记住在阅读数据后也关闭您使用的所有读者。