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
Ciclo di vita risorse con .NET Aspire
Semplificare i deployment con le label in Azure Container App
Creare un indice su una colonna JSON in SQL Server
Integrare un LLM in ASP.NET Core con Microsoft.Extensions.AI
Utilizzare ExecuteUpdate per aggiornare colonne JSON in Entity Framework
Esporre tool MCP da API REST con Azure App Service
From Data to Insight: Exploratory Data Analysis with Python, VS Code and SQL MCP Server
Avviare rapidamente un container con Azure Container Apps Express
Configurare OpenTelemetry per Application Insights su ASP.NET Core
Breaking the Legacy Barrier: how to Use AI to Modernize Applications
Applicare il progressive enhancement in applicazioni web
Ottimizzare i costi con Smart tier in Azure Blob Storage


