Datos personales

miércoles, 24 de agosto de 2011

Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding

Este error "Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding", me apareció un día mientras hacia una consulta a mi BD SQL Server 2005, desde mi aplicación Web ASP-NET.


Bueno después de googlear un poco encontré la solución a este problema. Lo que sucede es que la consulta en la base de datos tomaba varios segundos y la conexión no espera lo suficiente, por lo tanto hay que hacer que la conexión espere a que la consulta termine de procesarse.
Bueno la solución que de inmediato me dio resultado es:

- En el código de la consulta a la base de datos, donde haces uso del SQLCOMMAND, hay que agregar la siguiente linea:(Ojo: micommand es una variable de tipo SQLCOMMAND)
micommand .CommandTimeout = 60;

Si esto no te da resultado, no desesperes, aquí quizás encuntres algo que te puede ayudar
 - En la cadena de conexión agregar:
"server=LocalHost;uid=sa;pwd=;database=DataBaseName;Connect Timeout=200; pooling='true'; Max Pool Size=200" 

 - Si no les da resultado, prueben con esto:
En el Web config
<system.web>
            <customErrors mode="Off"/>
            <httpRuntime appRequestQueueLimit="100" executionTimeout="60000" />

</system.web> 
 

Saludos, éxitos...!!!


3 comentarios: