0

我的应用程序中出现以下错误。

“超时已过期。在从池中获取连接之前已经过了超时期限。这可能是因为所有池连接都在使用中并且已达到最大池大小。”

没有任何想法,我只是在 web.config 中将编译 debug="true" 更改为编译 debug="false"。

问题突然消失了。编译调试和池大小之间有什么联系吗?

4

1 回答 1

2

它看起来像一个连接泄漏问题。使用后始终关闭/处理连接很重要。否则它们不会返回到连接池(或返回太慢)。

确保您始终使用带有连接的 using 语句,例如:

using (SqlConnection connection = new SqlConnection(connectionString))  
{  
    SqlCommand command = connection.CreateCommand();  

    command.CommandText = "mysp_GetValue";  
    command.CommandType = CommandType.StoredProcedure;  

    connection.Open();  
    object ret = command.ExecuteScalar();  
}  

更多信息在这里

于 2012-12-19T06:10:10.783 回答