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. Es wird in der Regel nicht im Anwendungscode verwendet.

public interface IDatabaseCreator
type IDatabaseCreator = interface
Public Interface IDatabaseCreator
Abgeleitet

Hinweise

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

Weitere Informationen und Beispiele finden Sie unter Implementierung von Datenbankanbietern und -erweiterungen .

Methoden

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, werden keine Aktionen durchgeführt. Wenn sie nicht vorhanden ist, werden die Datenbank und ihr gesamtes Schema erstellt. Wenn die Datenbank vorhanden ist, werden keine Anstrengungen 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, werden keine Aktionen durchgeführt. Wenn sie nicht vorhanden ist, werden die Datenbank und ihr gesamtes Schema erstellt. Wenn die Datenbank vorhanden ist, werden keine Anstrengungen 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 nicht versucht, 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 nicht versucht, nur die Datenbankobjekte zu entfernen, die vom Modell für diesen Kontext verwendet werden.

Gilt für