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
Generare file PDF da Blazor WebAssembly con iText
Inizializzare i container in Azure Container Apps
Utilizzare Model as a Service su Microsoft Azure
C# 12: Cosa c'è di nuovo e interessante
Gestire undefined e partial nelle reactive forms di Angular
Evitare il flickering dei componenti nel prerender di Blazor 8
Usare le variabili per personalizzare gli stili CSS
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Usare le collection expression per inizializzare una lista di oggetti in C#
Disabilitare automaticamente un workflow di GitHub
Filtrare e rimuovere gli elementi dalla cache del browser tramite le API JavaScript