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>

원본 쿼리입니다.

반환

IQueryable<TEntity>

컨텍스트에서 결과 집합을 추적하지 않는 새 쿼리입니다.

예외

sourcenull입니다.

설명

변경 내용 추적을 사용하지 않도록 설정하면 각 엔터티 instance 대한 변경 내용 추적 설정 오버헤드를 방지하므로 읽기 전용 시나리오에 유용합니다. 엔터티 인스턴스를 조작하고 를 사용하여 SaveChanges()해당 변경 내용을 데이터베이스에 유지하려는 경우 변경 내용 추적을 사용하지 않도록 설정해서는 안 됩니다.

ID 확인은 수행되지 않습니다. 지정된 키를 가진 엔터티가 결과 집합에서 다른 결과에 있는 경우 다른 인스턴스가 됩니다.

쿼리에 대한 기본 추적 동작은 에서 제어 QueryTrackingBehavior할 수 있습니다.

자세한 내용 과 예제는 EF Core의 추적 없음 쿼리 를 참조하세요.

적용 대상