我想了解Clearpool
,Dispose
,Close
在OracleConnection中的作用?
发生异常后,我想摆脱当前连接并使用相同的连接字符串创建一个全新的连接。我应该如何摆脱旧的连接?
首先应该是clearpool还是处理连接?而clearpool vs dispose / close有什么作用?
我目前的代码如下:
public virtual void Dispose()
{
try
{
_connection.Close();
}
catch (Exception e)
{
}
finally
{
_connection.Dispose();
_connection.ClearPool();
_connection = null;
}
}
答案 0 :(得分:0)
解决此问题的最简单方法是在using
块内创建连接。每当块执行完成时,该块内的所有内容都将被处理。此外,不要留下没有动作的捕获物。这可能会以您不知道的无声异常结束。
using(OracleConnection conn = new OracleConnection("yourConnStr"))
{
//ALL YOUR LOGIC INSIDE
}