Estoy desarrollando un sitio web ASP.NET utilizando MVC3, .NET framework 4.0 y Entity Framework. Cuando ejecuto la aplicación y realizo una selección simple a una base de datos de SQL Server 2005 recibo el siguiente error:.NET 4.0 Entity framework expiró el tiempo de espera
"Se lanzó una excepción System.Data.SqlClient.SqlException:" El tiempo de espera expiró. El tiempo de espera transcurrido antes de la finalización de la operación o el servidor no responde "
Esto es lo que intento. Intenté iniciar sesión y realizar la misma consulta desde Management Studio y funcionó. Desarrollé una pequeña aplicación de consola usando .NET framework 4.0 y framework de entidades realizan exactamente la misma consulta y devolvieron la información que necesitaba. Incluso cambié de usar Entity Framework a clases ADO.NET (SqlConnection y SqlCommand) y al ejecutar la selección de la instancia de SqlCommand obtengo la exacta mismo error.
Cuando creé el modelo usando el marco de entidades, pude conectarme desde el asistente a la base de datos y funcionó bien. Obtuve todas las clases creadas sin ningún problema.
Por favor, no me diga que la solución es aumentar el tiempo de espera porque la consulta es muy pequeña (20 registros como máximo) y como dije antes funcionaba bien desde una aplicación de consola usando la misma tecnología e incluso la misma código que coloco a continuación.
Este es el código me da el problema:
MLIBEntities dbMLIB = new MLIBEntities();
var searchResults = (from s in dbMLIB.Sets
where s.setmap1.StartsWith(accountNumber)
select s);
return searchResults.ToList();
La excepción se produce cuando se ejecuta searchResults.ToList();
Esta es mi cadena de conexión que utilizan las clases de entidades. Estoy seguro de que usa la cadena de conexión ya que la modifiqué con errores de sintaxis y se detectaron.
<connectionStrings>
<add name="MLIBEntities" connectionString="metadata=res://*/Models.MlibDBModel.csdl|res://*/Models.MlibDBModel.ssdl|res://*/Models.MlibDBModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=HERPADERP;Initial Catalog=MLIB;Integrated Security=True;MultipleActiveResultSets=True;Connect Timeout=200"" providerName="System.Data.EntityClient" />
</connectionStrings>
supongo que esto debe ser un problema de configuración en algún lugar de la aplicación web MVC o sólo estoy perdiendo algo en el archivo Web.config. ¿Alguno de ustedes ha tenido este problema? Sé que es realmente extraño.
Gracias por su ayuda. Realmente estoy sin ideas.
Una última cosa. Ejecuté el generador de perfiles SQL y parece que la consulta nunca llega al servidor de la base de datos. ¿Alguna idea de por qué podría estar pasando esto?
¿Se agota el tiempo después de 200 segundos? – Will
Realmente, no tiene relación con ASP.NET MVC 3. –
SQL Server es local o en red? –