Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# OdbcConnection.ConnectionTimeout不';t覆盖DbConnection.ConnectionTimeout_C#_.net_Odbc - Fatal编程技术网

C# OdbcConnection.ConnectionTimeout不';t覆盖DbConnection.ConnectionTimeout

C# OdbcConnection.ConnectionTimeout不';t覆盖DbConnection.ConnectionTimeout,c#,.net,odbc,C#,.net,Odbc,使用C#.NET 4.5 我创建了一个OdbcConnection(使用NewConnection()),并将其ConnectionTimeout设置为m_timeout。然后我注意到,当我访问DbConnection.ConnectionTimeout时,值仍然是15,而不是m_timeout。如果我这样做(连接为OdbcConnection).ConnectionTimeout,那么我会得到m_timeout作为值。OdbcConnection.ConnectionTimeout属性不应该覆

使用C#.NET 4.5

我创建了一个OdbcConnection(使用NewConnection()),并将其ConnectionTimeout设置为m_timeout。然后我注意到,当我访问DbConnection.ConnectionTimeout时,值仍然是15,而不是m_timeout。如果我这样做(连接为OdbcConnection).ConnectionTimeout,那么我会得到m_timeout作为值。OdbcConnection.ConnectionTimeout属性不应该覆盖DbConnection.ConnectionTimeout属性吗?我做的事情有问题吗

    public IDbConnection NewConnection(ConnectionType type)
    {
        var connection = NewPhysicalConnection(); // connection.ConnectionTimeout is 15 here
        return new DBConnection(connection, type, NewExceptionTranslator(), m_timeout);
    }

    public IDbConnection NewPhysicalConnection()
    {
        var connection = new OdbcConnection(m_connectionString);
        connection.ConnectionTimeout = m_timeout;
        return connection; // connection.ConnectionTimeout is m_timeout here
    }

编辑:澄清一下,这是在一个线程中完成的。

测试在连接字符串中添加timeoot属性。我可以,但我发现多态属性不能像我想理解的那样工作。