Modificare globalmente la modalità di esecuzione delle query con Include in Entity Framework Core 5

di Stefano Mostarda, in LINQ, Entity Framework,

Nello script #548 abbiamo visto come istruire Entity Framework Core 5 sul comportamento da tenere per risolvere le Include verso le collection navigation property. In quello script abbiamo sfruttato il metodo AsSplitQuery per definire il comportamento di una singola query. Sebene questo sia un buon punto di partenza, quando abbiamo un'applicazione basata su .NET Core 1 o 2 che vogliamo portare a .NET 5 potremmo decidere di voler abilitare questo comportamento per tutte le query per non incorrere in problemi con le query con molte Include.
Possiamo impostare il comportamento a livello globale attraverso le impostazioni del provider che impostiamo come mostrato nel seguente codice

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
  optionsBuilder
    .UseSqlServer("MyConnectionstring",
      o => o.UseQuerySplittingBehavior(QuerySplittingBehavior.SplitQuery));
}

In questo esempio impostiamo SqlServer come database provider e nelle opzioni decidiamo che il comportamento di default per le query con Include verso collection navigation property è quello di eseguire più query invece che una singola.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi