다음을 통해 공유


DatabaseFacade.EnsureDeletedAsync(CancellationToken) 메서드

정의

컨텍스트에 대한 데이터베이스가 없는지 비동기적으로 확인합니다. 존재하지 않으면 아무 작업도 수행되지 않습니다. 있는 경우 데이터베이스가 삭제됩니다.

경고: 전체 데이터베이스가 삭제되고 이 컨텍스트에 대해 모델에서 사용하는 데이터베이스 개체만 제거하려고 하지 않습니다.

public virtual System.Threading.Tasks.Task<bool> EnsureDeletedAsync (System.Threading.CancellationToken cancellationToken = default);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Migrations operations require building the design-time model which is not supported with NativeAOT Use a migration bundle or an alternate way of executing migration operations.")]
public virtual System.Threading.Tasks.Task<bool> EnsureDeletedAsync (System.Threading.CancellationToken cancellationToken = default);
abstract member EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
override this.EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Migrations operations require building the design-time model which is not supported with NativeAOT Use a migration bundle or an alternate way of executing migration operations.")>]
abstract member EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
override this.EnsureDeletedAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Overridable Function EnsureDeletedAsync (Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)

매개 변수

cancellationToken
CancellationToken

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

반환

비동기 저장 작업(operation)을 나타내는 작업(task)입니다. 데이터베이스가 true 없는 경우 작업 결과에는 데이터베이스가 삭제된 false 경우 가 포함됩니다.

특성

예외

설명

Entity Framework를 사용하여 테스트하거나 프로토타입을 생성할 때 바로 다음 EnsureDeletedAsync(CancellationToken) 을 사용하는 EnsureCreatedAsync(CancellationToken) 것이 일반적입니다. 이렇게 하면 각 테스트/프로토타입을 실행하기 전에 데이터베이스가 클린 상태에 있게 됩니다. 그러나 데이터베이스의 데이터는 보존되지 않습니다.

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

자세한 내용 과 예제는 EF Core데이터베이스 만들기 API 를 사용하여 데이터베이스 스키마 관리를 참조하세요.

적용 대상