Le Compiled Queries di Entity Framework permettono di velocizzare le performance di una query LINQ to Entities in quanto mantengono l'expression tree da queste generato. Poichè le Compiled Queries mantengono l'expression tree generato, quando si combina una Compiled Query con un'altro metodo LINQ, l'expression tree memorizzato viene ignorato e la query viene processata da zero.
Il modo migliore per evitare questo problema è creare un set di query, anche se molto simili, di modo da ottimizzare al massimo le performance.
var result = myCompiledQuery.Invoke(ctx); foreach (var item in result) { } //usa query compilata var result = myCompiledQuery.Invoke(ctx).Select(c => c.ID); foreach (var item in result) { } //esegue da zero
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Filtrare i dati di una QuickGrid in Blazor con una drop down list
Gestire i dati con Azure Cosmos DB Data Explorer
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Referenziare un @layer più alto in CSS
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Utilizzare un numero per gestire la concorrenza ottimistica con SQL Server ed Entity Framework
Usare il colore CSS per migliorare lo stile della pagina
Utilizzare gRPC su App Service di Azure
Gestione dell'annidamento delle regole dei layer in CSS
Supportare la sessione affinity di Azure App Service con Application Gateway
Eseguire query in contemporanea con EF
I più letti di oggi
- Parallelizzare le chiamate HTTP con async/await e le Promise in JavaScript
- Convertire un database in un file XML
- le nuove api in #wp7 #mango (7.1) sono già su msdn: http://aspitalia.com/w5 nel pomeriggio microsoft svelerà le altre novità
- #office 2010 beta 2 e #sharepoint 2010 su MSDN e TechNet downloads http://u.aspitalia.com/cv
- Recuperare un elemento inserito nella cache del browser tramite API JavaScript