Sprache

IDatabaseCreator Schnittstelle

Definition

Erstellt und löscht Datenbanken für einen bestimmten Datenbankanbieter.

Diese Schnittstelle wird in der Regel von Datenbankanbietern (und anderen Erweiterungen) verwendet. Sie wird in der Regel nicht im Anwendungscode verwendet.

public interface IDatabaseCreator
type IDatabaseCreator = interface
Public Interface IDatabaseCreator
Abgeleitet

Hinweise

Die Dienstlebensdauer lautet Scoped. Dies bedeutet, dass jede DbContext Instanz eine eigene Instanz dieses Diensts verwendet. Die Implementierung kann von anderen Diensten abhängen, die mit jeder Lebensdauer registriert sind. Die Implementierung muss nicht threadsicher sein.

Weitere Informationen und Beispiele finden Sie unter Implementierung von Datenbankanbietern und Erweiterungen .

Methoden

Name Beschreibung
CanConnect()

Bestimmt, ob die Datenbank verfügbar ist und mit der eine Verbindung hergestellt werden kann.

CanConnectAsync(CancellationToken)

Bestimmt, ob die Datenbank verfügbar ist und mit der eine Verbindung hergestellt werden kann.

EnsureCreated()

Stellt sicher, dass die Datenbank für den Kontext vorhanden ist. Wenn sie vorhanden ist, wird keine Aktion ausgeführt. Wenn sie nicht vorhanden ist, werden die Datenbank und das gesamte Schema erstellt. Wenn die Datenbank vorhanden ist, wird kein Aufwand unternommen, um sicherzustellen, dass sie mit dem Modell für diesen Kontext kompatibel ist.

EnsureCreatedAsync(CancellationToken)

Stellt asynchron sicher, dass die Datenbank für den Kontext vorhanden ist. Wenn sie vorhanden ist, wird keine Aktion ausgeführt. Wenn sie nicht vorhanden ist, werden die Datenbank und das gesamte Schema erstellt. Wenn die Datenbank vorhanden ist, wird kein Aufwand unternommen, um sicherzustellen, dass sie mit dem Modell für diesen Kontext kompatibel ist.

EnsureDeleted()

Stellt 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 keine Mühe unternommen, nur die Datenbankobjekte zu entfernen, die vom Modell für diesen Kontext verwendet werden.

EnsureDeletedAsync(CancellationToken)

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 keine Mühe unternommen, nur die Datenbankobjekte zu entfernen, die vom Modell für diesen Kontext verwendet werden.

Gilt für: