DatabaseFacade.EnsureCreated Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt sicher, dass die Datenbank für den Kontext vorhanden ist.
public virtual bool EnsureCreated();
[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 bool EnsureCreated();
abstract member EnsureCreated : unit -> bool
override this.EnsureCreated : unit -> 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 EnsureCreated : unit -> bool
override this.EnsureCreated : unit -> bool
Public Overridable Function EnsureCreated () As Boolean
Gibt zurück
true wenn die Datenbank erstellt wird, false sofern sie bereits vorhanden ist.
- Attribute
Hinweise
- Wenn die Datenbank vorhanden ist und Tabellen vorhanden sind, wird keine Aktion ausgeführt. Es wird nichts getan, um sicherzustellen, dass das Datenbankschema mit dem Entity Framework-Modell kompatibel ist.
- Wenn die Datenbank vorhanden ist, aber keine Tabellen enthält, wird das Entity Framework-Modell verwendet, um das Datenbankschema zu erstellen.
- Wenn die Datenbank nicht vorhanden ist, wird die Datenbank erstellt, und das Entity Framework-Modell wird zum Erstellen des Datenbankschemas verwendet.
Es ist üblich, beim Testen oder Prototypen mithilfe von Entity Framework sofort zu EnsureDeleted() verwendenEnsureCreated(). 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.
Beachten Sie, dass diese API **nicht** Migrationen zum Erstellen der Datenbank verwendet. Darüber hinaus kann die erstellte Datenbank nicht später mithilfe von Migrationen aktualisiert werden. Wenn Sie auf eine relationale Datenbank abzielen und Migrationen verwenden Microsoft.EntityFrameworkCore.RelationalDatabaseFacadeExtensions.Migrate , können Sie sicherstellen, dass die Datenbank mithilfe von Migrationen erstellt wird und dass alle Migrationen angewendet wurden.
Weitere Informationen und Beispiele finden Sie unter Verwalten von Datenbankschemas mit EF Core - und Datenbankerstellungs-APIs .