Hello,
on constate que certaines listes d'objets prennent 20-25 secondes à être générées via EF.
Via SQL Server Profiler, on retrouve une durée de cet ordre de grandeur (par ex 21 sec), avec, à titre d'information, 1461 pages lues et 60 000 enregistrements présents dans la table pour la requête concernée.
La requête exécutée est un bête select, même pas de jointure...
Si on prend la requête affichée par SQL Server Profiler et qu'on l’exécute dans management studio, la requête prend 0 à 1 sec...
Qu'est ce qui peut expliquer ça ?
EDIT :
Je refais un test avec tous les appels via c#. Les résultats (en ms, mesuré dans le code via un Stopwatch)
Si je commence par faire un appel via ExecuteStoreQuery, j'obtiens ceci :EF : 22227,2778 //Context.Sequence.ToList()
SQL : 2,3137 //SqlCommand sqlCom = new SqlCommand("select * from Sequence", cnx);
EF Store Query : 46,4585 //contextNv.ExecuteStoreQuery<Sequence>("select * from Sequence");
Donc je vois bien le temps pris pour la compilation de la requête, mais aucun impact sur la requête via ToListEF Store Query : 685,0155
EF : 22816,2245
SQL : 2,3236
Partager