EntityFrameworkQueryableExtensions.AsNoTracking<TEntity> Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Средство отслеживания изменений не будет отслеживать сущности, возвращаемые запросом LINQ. Если экземпляры сущности изменены, это не будет обнаружено средство отслеживания изменений и SaveChanges() не будет сохранять эти изменения в базе данных.
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)
Параметры типа
- TEntity
Тип запрашиваемой сущности.
Параметры
- source
- IQueryable<TEntity>
Исходный запрос.
Возвращаемое значение
Новый запрос, в котором результирующий набор не будет отслеживаться контекстом.
Исключения
source
имеет значение null
.
Комментарии
Отключение отслеживания изменений полезно для сценариев только для чтения, так как позволяет избежать дополнительных затрат на настройку отслеживания изменений для каждого экземпляра сущности. Не следует отключать отслеживание изменений, если вы хотите управлять экземплярами сущностей и сохранять эти изменения в базе данных с помощью SaveChanges().
Разрешение удостоверений не выполняется. Если сущность с заданным ключом имеет другой результат в результирующем наборе, то они будут разными экземплярами.
Поведением отслеживания по умолчанию для запросов можно управлять с помощью QueryTrackingBehavior.
Дополнительные сведения и примеры см. в разделе Запросы без отслеживания в EF Core .
Применяется к
Entity Framework