L'efficienza del database è una delle condizioni necessarie per il buon funzionamento di qualunque applicazione. Per questo motivo, spesso vengono fatti dei monitoring sui tempi di esecuzione delle query sia prima di andare in produzione sia durante l'esercizio. Eseguire questi monitoring a livello di database, ci permette di recuperare le query più lente o più gravose, ma non ci permette di effettuare una cosa molto importante: ricondurre la query SQL al codice LINQ che l'ha generata.
Per semplificare questo compito, EF Core 6 introduce un nuovo extension method: TagWithCallSite. Questo metodo aggiunge alla query un commento con il nome del file e la riga di codice in cui si trova la query LINQ che ha generato il comando SQL.
ctx.People .TagWithCallSite() .Where(...) .OrderBy(...) .ToList();
Il sisultato sara un codice SQL come questo.
-- file: C:\work\QueryLine.cs:21 SELECT * FROM Table WHERE 1=1
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Recuperare le subissue e il loro stato di completamento in GitHub
Integrazione di Copilot in .NET Aspire
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
Utilizzare Locust con Azure Load Testing
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Abilitare automaticamente il force push di un gruppo su Azure DevOps
Esporre un server MCP con Azure API Management
Supportare la sessione affinity di Azure App Service con Application Gateway
Scrivere selettori CSS più semplici ed efficienti con :is()
Anonimizzare i dati sensibili nei log di Azure Front Door
Controllare la telemetria con .NET Aspire


