oracleConnection.close()不要在会话浏览器中关闭连接

时间:2012-11-01 14:11:11

标签: c#

我运行测试连接,我希望看到清晰的会话浏览器, 但是在程序结束时,我在会话浏览器中看到了6个以上的会话

这是代码:

private void testConnection()        
{   
        string connectionString = "data source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=1111)(PORT=1699))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = abcd)));Min Pool Size=10; Connection Lifetime=120;";

        OracleConnection oraConn = new OracleConnection(connectionString);

        try
        {
            oraConn.Open();
        }

        catch (Exception e)
        {
        }

        finally
        {
            oraConn.Dispose();
            oraConn.Close();
        }

    }

PLZ,帮帮我!!

2 个答案:

答案 0 :(得分:5)

你应该清理游泳池:

 finally
    {
        oraConn.Dispose();
        oraConn.Close();
        OracleConnection.ClearPool(oraConn);
    }

答案 1 :(得分:3)

原因很可能是连接池。来自MSDN:

OracleConnection.Close Method

  

Close方法回滚所有待处理的事务。然后发布   连接到连接池,或者关闭连接   连接池已禁用。

因此,您的连接实例将在C#中被处置掉,但连接可能会在池中保持打开状态,以便下次请求时可以快速提供新的打开连接实例。