EntityFrameworkQueryableExtensions.AsNoTracking<TEntity> Metodo

Definizione

Lo strumento di rilevamento delle modifiche non tiene traccia delle entità restituite da una query LINQ. Se le istanze dell'entità vengono modificate, questa operazione non verrà rilevata dal rilevamento delle modifiche e SaveChanges() le modifiche non verranno mantenute nel database.

public static System.Linq.IQueryable<TEntity> AsNoTracking<TEntity> (this System.Linq.IQueryable<TEntity> source) where TEntity : class;
static member AsNoTracking : System.Linq.IQueryable<'Entity (requires 'Entity : null)> -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function AsNoTracking(Of TEntity As Class) (source As IQueryable(Of TEntity)) As IQueryable(Of TEntity)

Parametri di tipo

TEntity

Tipo di entità su cui viene eseguito la query.

Parametri

source
IQueryable<TEntity>

Query di origine.

Restituisce

IQueryable<TEntity>

Nuova query in cui il set di risultati non verrà rilevato dal contesto.

Eccezioni

source è null.

Commenti

La disabilitazione del rilevamento delle modifiche è utile per gli scenari di sola lettura perché evita il sovraccarico della configurazione del rilevamento delle modifiche per ogni istanza di entità. Non è consigliabile disabilitare il rilevamento delle modifiche se si desidera modificare le istanze di entità e rendere persistenti tali modifiche al database usando SaveChanges().

La risoluzione delle identità non verrà eseguita. Se un'entità con una chiave specificata ha un risultato diverso nel set di risultati, saranno istanze diverse.

Il comportamento di rilevamento predefinito per le query può essere controllato da QueryTrackingBehavior.

Per altre informazioni ed esempi, vedere No-tracking queries in EF Core .See No-tracking queries in EF Core for more information and examples.

Si applica a