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
Utilizzare un service principal per accedere a Azure Container Registry
Gestire i dati con Azure Cosmos DB Data Explorer
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Code scanning e advanced security con Azure DevOps
Utilizzare EF.Constant per evitare la parametrizzazione di query SQL
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Usare il colore CSS per migliorare lo stile della pagina
Filtering sulle colonne in una QuickGrid di Blazor
Gestione dell'annidamento delle regole dei layer in CSS
Proteggere le risorse Azure con private link e private endpoints