EntityFrameworkQueryableExtensions.AsNoTracking<TEntity> Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Monitor zmian nie będzie śledzić żadnych jednostek zwracanych z zapytania LINQ. Jeśli wystąpienia jednostek zostaną zmodyfikowane, nie zostanie to wykryte przez monitor zmian i SaveChanges() nie będzie utrwalać tych zmian w bazie danych.
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)
Parametry typu
- TEntity
Typ badanej jednostki.
Parametry
- source
- IQueryable<TEntity>
Zapytanie źródłowe.
Zwraca
Nowe zapytanie, w którym zestaw wyników nie będzie śledzony przez kontekst.
Wyjątki
source
to null
.
Uwagi
Wyłączenie śledzenia zmian jest przydatne w scenariuszach tylko do odczytu, ponieważ pozwala uniknąć narzutów związanych z konfigurowaniem śledzenia zmian dla każdego wystąpienia jednostki. Nie należy wyłączać śledzenia zmian, jeśli chcesz manipulować wystąpieniami jednostek i utrwalać te zmiany w bazie danych przy użyciu polecenia SaveChanges().
Rozpoznawanie tożsamości nie zostanie wykonane. Jeśli jednostka z danym kluczem jest w innym wyniku w zestawie wyników, będą one różne wystąpienia.
Domyślne zachowanie śledzenia zapytań może być kontrolowane przez usługę QueryTrackingBehavior.
Aby uzyskać więcej informacji i przykłady, zobacz Brak zapytań śledzenia w programie EF Core .