Sprache

DatabaseFacade.EnsureDeletedAsync(CancellationToken) Methode

Definition

Stellt asynchron sicher, dass die Datenbank für den Kontext nicht vorhanden ist. Wenn sie nicht vorhanden ist, wird keine Aktion ausgeführt. Wenn sie vorhanden ist, wird die Datenbank gelöscht.

Warnung: Die gesamte Datenbank wird gelöscht, und es wird nicht versucht, nur die Datenbankobjekte zu entfernen, die vom Modell für diesen Kontext verwendet werden.

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)

Parameter

cancellationToken
CancellationToken

A CancellationToken , um zu beobachten, während sie auf den Abschluss der Aufgabe warten.

Gibt zurück

Eine Aufgabe, die den asynchronen Speichervorgang darstellt. Das Aufgabenergebnis enthält true , wenn die Datenbank gelöscht wird, false falls sie nicht vorhanden ist.

Attribute

Ausnahmen

Wenn der CancellationToken Vorgang abgebrochen wird.

Hinweise

Es ist üblich, beim Testen oder Prototypen mithilfe von Entity Framework sofort zu EnsureDeletedAsync(CancellationToken) verwendenEnsureCreatedAsync(CancellationToken). Dadurch wird sichergestellt, dass sich die Datenbank vor jeder Ausführung des Test-/Prototyps in einem sauberen Zustand befindet. Beachten Sie jedoch, dass Die Daten in der Datenbank nicht beibehalten werden.

Entity Framework Core unterstützt nicht mehrere parallele Vorgänge, die auf derselben DbContext-Instanz ausgeführt werden. Dies schließt die parallele Ausführung von asynchronen Abfragen und jede explizite gleichzeitige Verwendung aus mehreren Threads ein. Warten Sie daher immer sofort auf asynchrone Aufrufe, oder verwenden Sie separate DbContext-Instanzen für Vorgänge, die parallel ausgeführt werden. Weitere Informationen und Beispiele finden Sie unter Vermeiden von DbContext-Threadingproblemen .

Weitere Informationen und Beispiele finden Sie unter Verwalten von Datenbankschemas mit EF Core - und Datenbankerstellungs-APIs .

Gilt für: