Partilhar via


DatabaseFacade.EnsureDeletedAsync(CancellationToken) Método

Definição

Garante de forma assíncrona que o banco de dados para o contexto não exista. Se ele não existir, nenhuma ação será tomada. Se ele existir, o banco de dados será excluído.

Aviso: todo o banco de dados é excluído e nenhum esforço é feito para remover apenas os objetos de banco de dados usados pelo modelo para esse contexto.

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)

Parâmetros

cancellationToken
CancellationToken

Um CancellationToken a ser observado enquanto aguarda a conclusão da tarefa.

Retornos

Uma tarefa que representa a operação de salvar assíncrona. O resultado da tarefa conterá true se o banco de dados for excluído, false se ele não existir.

Atributos

Exceções

Se o padrão CancellationToken for cancelado.

Comentários

É comum usar EnsureCreatedAsync(CancellationToken) imediatamente a seguir EnsureDeletedAsync(CancellationToken) ao testar ou criar protótipos usando o Entity Framework. Isso garante que o banco de dados esteja em um estado limpo antes de cada execução do teste/protótipo. Observe, no entanto, que os dados no banco de dados não são preservados.

O Entity Framework Core não dá suporte a várias operações paralelas que estão sendo executadas na mesma instância DbContext. Isso inclui a execução paralela de consultas assíncronas e qualquer uso simultâneo explícito de vários threads. Portanto, sempre aguarde chamadas assíncronas imediatamente ou use instâncias DbContext separadas para operações executadas em paralelo. Consulte Evitando problemas de threading DbContext para obter mais informações e exemplos.

Consulte Gerenciando esquemas de banco de dados comAPIs de criação de banco de dados e EF Core para obter mais informações e exemplos.

Aplica-se a