Sto sviluppando un sito Web ASP.NET utilizzando MVC3, .NET framework 4.0 ed Entity Framework. Quando eseguo l'applicazione ed eseguo una semplice selezione su un database di SQL Server 2005, viene visualizzato il seguente errore:.NET 4.0 Timeout del framework Entity scaduto
"È stata generata una System.Data.SqlClient.SqlException:" Timeout scaduto. Il periodo di timeout è scaduto prima del completamento dell'operazione o il server non risponde. "
Questa è la cosa, ho provato ad accedere e ad eseguire la stessa query dallo studio di gestione e ha funzionato. .NET framework 4.0 e framework di entità che eseguono esattamente la stessa query e restituiscono le informazioni necessarie. Sono persino passato dall'utilizzo di Entity framework alle classi ADO.NET (SqlConnection e SqlCommand) e quando si esegue la selezione dall'istanza SqlCommand ottengo l'esatto lo stesso errore
Quando ho creato il modello utilizzando il framework di entità, sono riuscito a connettermi dalla procedura guidata al database e ha funzionato correttamente. Ho ottenuto tutte le classi create senza problemi
Si prega di non dirmi la soluzione è di aumentare qualsiasi timeout perché la query è molto piccola (20 record in alto) e come ho detto prima funzionava bene quando si esegue da un'applicazione console utilizzando la stessa tecnologia e anche la stessa codice posto sotto.
Questo è il codice dandomi il problema:
MLIBEntities dbMLIB = new MLIBEntities();
var searchResults = (from s in dbMLIB.Sets
where s.setmap1.StartsWith(accountNumber)
select s);
return searchResults.ToList();
L'eccezione viene generata durante l'esecuzione searchResults.ToList();
Questa è la mia stringa di connessione utilizzata dalle classi di entità. Sono sicuro che usa la stringa di connessione dato che l'ho modificata con errori di sintassi e sono stati rilevati.
<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>
Sto indovinando questo deve essere un problema di configurazione da qualche parte nella applicazione web MVC o sto solo perdendo qualcosa nel file web.config. Qualcuno di voi ha avuto questo problema? So che è davvero strano.
Grazie per il vostro aiuto. Sono davvero senza idee.
Un'ultima cosa. Ho eseguito il profiler SQL e sembra che la query non arrivi mai al server del database. Qualche idea del perché questo potrebbe accadere?
Timeout effettivo dopo 200 secondi? – Will
In realtà, nessuna relazione con ASP.NET MVC 3. –
SQL Server è locale o sulla rete? –