Freigeben über


DatabaseFacade.EnsureCreated Methode

Definition

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 wurde, false wenn sie bereits vorhanden ist.

Attribute

Hinweise

  • Wenn die Datenbank vorhanden ist und Tabellen enthält, wird keine Aktion ausgeführt. Es wird nichts unternommen, 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 Erstellen von Prototypen mithilfe von Entity Framework sofort im Anschluss EnsureDeleted() zu verwendenEnsureCreated(). Dadurch wird sichergestellt, dass sich die Datenbank vor jeder Ausführung des Tests/Prototyps in einem sauber Zustand befindet. Beachten Sie jedoch, dass die Daten in der Datenbank nicht beibehalten werden.

Beachten Sie, dass diese API **nicht** Migrationen verwendet, um die Datenbank zu erstellen. Darüber hinaus kann die erstellte Datenbank nicht später mithilfe von Migrationen aktualisiert werden. Wenn Sie eine relationale Datenbank als Ziel verwenden und Migrationen verwenden, können Sie verwenden Microsoft.EntityFrameworkCore.RelationalDatabaseFacadeExtensions.Migrate , um sicherzustellen, dass die Datenbank mithilfe von Migrationen erstellt und alle Migrationen angewendet wurden.

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

Gilt für: