我的应用程序中出现以下错误。
“超时已过期。在从池中获取连接之前已经过了超时期限。这可能是因为所有池连接都在使用中并且已达到最大池大小。”
没有任何想法,我只是在 web.config 中将编译 debug="true" 更改为编译 debug="false"。
问题突然消失了。编译调试和池大小之间有什么联系吗?
我的应用程序中出现以下错误。
“超时已过期。在从池中获取连接之前已经过了超时期限。这可能是因为所有池连接都在使用中并且已达到最大池大小。”
没有任何想法,我只是在 web.config 中将编译 debug="true" 更改为编译 debug="false"。
问题突然消失了。编译调试和池大小之间有什么联系吗?
它看起来像一个连接泄漏问题。使用后始终关闭/处理连接很重要。否则它们不会返回到连接池(或返回太慢)。
确保您始终使用带有连接的 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();
}