다음을 통해 공유


DbContext.FindAsync 메서드

정의

오버로드

FindAsync(Type, Object[], CancellationToken)

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

FindAsync(Type, Object[])

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

FindAsync<TEntity>(Object[])

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

FindAsync<TEntity>(Object[], CancellationToken)

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

FindAsync(Type, Object[], CancellationToken)

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

public virtual System.Threading.Tasks.Task<object> FindAsync (Type entityType, object[] keyValues, System.Threading.CancellationToken cancellationToken);
public virtual System.Threading.Tasks.ValueTask<object> FindAsync (Type entityType, object[] keyValues, System.Threading.CancellationToken cancellationToken);
public virtual System.Threading.Tasks.ValueTask<object?> FindAsync (Type entityType, object?[]? keyValues, System.Threading.CancellationToken cancellationToken);
abstract member FindAsync : Type * obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.Task<obj>
override this.FindAsync : Type * obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.Task<obj>
abstract member FindAsync : Type * obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<obj>
override this.FindAsync : Type * obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<obj>
Public Overridable Function FindAsync (entityType As Type, keyValues As Object(), cancellationToken As CancellationToken) As Task(Of Object)
Public Overridable Function FindAsync (entityType As Type, keyValues As Object(), cancellationToken As CancellationToken) As ValueTask(Of Object)

매개 변수

entityType
Type

찾을 엔터티의 형식입니다.

keyValues
Object[]

찾을 엔터티의 기본 키 값입니다.

cancellationToken
CancellationToken

CancellationToken 작업이 완료 될 때까지 기다리는 동안 관찰할 입니다.

반환

찾은 엔터티 또는 null입니다.

예외

설명

Entity Framework Core는 동일한 DbContext instance 실행되는 여러 병렬 작업을 지원하지 않습니다. 여기에는 비동기 쿼리의 병렬 실행과 여러 스레드에서의 명시적 동시 사용이 모두 포함됩니다. 따라서 항상 즉시 비동기 호출을 기다리거나 병렬로 실행되는 작업에 별도의 DbContext 인스턴스를 사용합니다. 자세한 내용 및 예제 는 DbContext 스레딩 문제 방지 를 참조하세요.

자세한 내용 과 예제는 찾기 및 FindAsync 사용을 참조하세요.

적용 대상

FindAsync(Type, Object[])

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

public virtual System.Threading.Tasks.Task<object> FindAsync (Type entityType, params object[] keyValues);
public virtual System.Threading.Tasks.ValueTask<object> FindAsync (Type entityType, params object[] keyValues);
public virtual System.Threading.Tasks.ValueTask<object?> FindAsync (Type entityType, params object?[]? keyValues);
abstract member FindAsync : Type * obj[] -> System.Threading.Tasks.Task<obj>
override this.FindAsync : Type * obj[] -> System.Threading.Tasks.Task<obj>
abstract member FindAsync : Type * obj[] -> System.Threading.Tasks.ValueTask<obj>
override this.FindAsync : Type * obj[] -> System.Threading.Tasks.ValueTask<obj>
Public Overridable Function FindAsync (entityType As Type, ParamArray keyValues As Object()) As Task(Of Object)
Public Overridable Function FindAsync (entityType As Type, ParamArray keyValues As Object()) As ValueTask(Of Object)

매개 변수

entityType
Type

찾을 엔터티의 형식입니다.

keyValues
Object[]

찾을 엔터티의 기본 키 값입니다.

반환

찾은 엔터티 또는 null입니다.

설명

Entity Framework Core는 동일한 DbContext instance 실행되는 여러 병렬 작업을 지원하지 않습니다. 여기에는 비동기 쿼리의 병렬 실행과 여러 스레드에서의 명시적 동시 사용이 모두 포함됩니다. 따라서 항상 즉시 비동기 호출을 기다리거나 병렬로 실행되는 작업에 별도의 DbContext 인스턴스를 사용합니다. 자세한 내용 및 예제 는 DbContext 스레딩 문제 방지 를 참조하세요.

자세한 내용 과 예제는 찾기 및 FindAsync 사용을 참조하세요.

적용 대상

FindAsync<TEntity>(Object[])

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

public virtual System.Threading.Tasks.Task<TEntity> FindAsync<TEntity> (params object[] keyValues) where TEntity : class;
public virtual System.Threading.Tasks.ValueTask<TEntity> FindAsync<TEntity> (params object[] keyValues) where TEntity : class;
public virtual System.Threading.Tasks.ValueTask<TEntity?> FindAsync<TEntity> (params object?[]? keyValues) where TEntity : class;
abstract member FindAsync : obj[] -> System.Threading.Tasks.Task<'Entity (requires 'Entity : null)> (requires 'Entity : null)
override this.FindAsync : obj[] -> System.Threading.Tasks.Task<'Entity (requires 'Entity : null)> (requires 'Entity : null)
abstract member FindAsync : obj[] -> System.Threading.Tasks.ValueTask<'Entity (requires 'Entity : null)> (requires 'Entity : null)
override this.FindAsync : obj[] -> System.Threading.Tasks.ValueTask<'Entity (requires 'Entity : null)> (requires 'Entity : null)
Public Overridable Function FindAsync(Of TEntity As Class) (ParamArray keyValues As Object()) As Task(Of TEntity)
Public Overridable Function FindAsync(Of TEntity As Class) (ParamArray keyValues As Object()) As ValueTask(Of TEntity)

형식 매개 변수

TEntity

찾을 엔터티의 형식입니다.

매개 변수

keyValues
Object[]

찾을 엔터티의 기본 키 값입니다.

반환

Task<TEntity>
ValueTask<TEntity>

찾은 엔터티 또는 null입니다.

설명

Entity Framework Core는 동일한 DbContext instance 실행되는 여러 병렬 작업을 지원하지 않습니다. 여기에는 비동기 쿼리의 병렬 실행과 여러 스레드에서의 명시적 동시 사용이 모두 포함됩니다. 따라서 항상 즉시 비동기 호출을 기다리거나 병렬로 실행되는 작업에 별도의 DbContext 인스턴스를 사용합니다. 자세한 내용 및 예제 는 DbContext 스레딩 문제 방지 를 참조하세요.

자세한 내용 과 예제는 찾기 및 FindAsync 사용을 참조하세요.

적용 대상

FindAsync<TEntity>(Object[], CancellationToken)

지정된 기본 키 값이 있는 엔터티를 찾습니다. 지정된 기본 키 값이 있는 엔터티가 컨텍스트에서 추적되는 경우 데이터베이스를 요청하지 않고 즉시 반환됩니다. 그렇지 않으면 지정된 기본 키 값이 있는 엔터티에 대한 데이터베이스에 대한 쿼리가 생성되고 이 엔터티가 있으면 컨텍스트에 연결되고 반환됩니다. 엔터티가 없으면 null이 반환됩니다.

public virtual System.Threading.Tasks.Task<TEntity> FindAsync<TEntity> (object[] keyValues, System.Threading.CancellationToken cancellationToken) where TEntity : class;
public virtual System.Threading.Tasks.ValueTask<TEntity> FindAsync<TEntity> (object[] keyValues, System.Threading.CancellationToken cancellationToken) where TEntity : class;
public virtual System.Threading.Tasks.ValueTask<TEntity?> FindAsync<TEntity> (object?[]? keyValues, System.Threading.CancellationToken cancellationToken) where TEntity : class;
abstract member FindAsync : obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Entity (requires 'Entity : null)> (requires 'Entity : null)
override this.FindAsync : obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Entity (requires 'Entity : null)> (requires 'Entity : null)
abstract member FindAsync : obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'Entity (requires 'Entity : null)> (requires 'Entity : null)
override this.FindAsync : obj[] * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<'Entity (requires 'Entity : null)> (requires 'Entity : null)
Public Overridable Function FindAsync(Of TEntity As Class) (keyValues As Object(), cancellationToken As CancellationToken) As Task(Of TEntity)
Public Overridable Function FindAsync(Of TEntity As Class) (keyValues As Object(), cancellationToken As CancellationToken) As ValueTask(Of TEntity)

형식 매개 변수

TEntity

찾을 엔터티의 형식입니다.

매개 변수

keyValues
Object[]

찾을 엔터티의 기본 키 값입니다.

cancellationToken
CancellationToken

CancellationToken 작업이 완료 될 때까지 기다리는 동안 관찰할 입니다.

반환

Task<TEntity>
ValueTask<TEntity>

찾은 엔터티 또는 null입니다.

예외

설명

Entity Framework Core는 동일한 DbContext instance 실행되는 여러 병렬 작업을 지원하지 않습니다. 여기에는 비동기 쿼리의 병렬 실행과 여러 스레드에서의 명시적 동시 사용이 모두 포함됩니다. 따라서 항상 즉시 비동기 호출을 기다리거나 병렬로 실행되는 작업에 별도의 DbContext 인스턴스를 사용합니다. 자세한 내용 및 예제 는 DbContext 스레딩 문제 방지 를 참조하세요.

자세한 내용 과 예제는 찾기 및 FindAsync 사용을 참조하세요.

적용 대상