Język

IDatabaseCreator Interfejs

Definicja

Tworzy i usuwa bazy danych dla danego dostawcy bazy danych.

Ten interfejs jest zwykle używany przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

public interface IDatabaseCreator
type IDatabaseCreator = interface
Public Interface IDatabaseCreator
Pochodne

Uwagi

Okres istnienia usługi to Scoped. Oznacza to, że każde DbContext wystąpienie będzie używać własnego wystąpienia tej usługi. Implementacja może zależeć od innych usług zarejestrowanych w dowolnym okresie istnienia. Implementacja nie musi być bezpieczna wątkowo.

Aby uzyskać więcej informacji i przykładów, zobacz Implementacja dostawców i rozszerzeń bazy danych .

Metody

Nazwisko Opis
CanConnect()

Określa, czy baza danych jest dostępna i z tą bazą danych może być połączona.

CanConnectAsync(CancellationToken)

Określa, czy baza danych jest dostępna i z tą bazą danych może być połączona.

EnsureCreated()

Gwarantuje, że baza danych dla kontekstu istnieje. Jeśli istnieje, nie zostanie podjęta żadna akcja. Jeśli nie istnieje, baza danych i cały jego schemat zostaną utworzone. Jeśli baza danych istnieje, nie podjęto żadnych starań, aby upewnić się, że jest ona zgodna z modelem dla tego kontekstu.

EnsureCreatedAsync(CancellationToken)

Asynchronicznie gwarantuje, że baza danych dla kontekstu istnieje. Jeśli istnieje, nie zostanie podjęta żadna akcja. Jeśli nie istnieje, baza danych i cały jego schemat zostaną utworzone. Jeśli baza danych istnieje, nie podjęto żadnych starań, aby upewnić się, że jest ona zgodna z modelem dla tego kontekstu.

EnsureDeleted()

Gwarantuje, że baza danych dla kontekstu nie istnieje. Jeśli nie istnieje, nie zostanie podjęta żadna akcja. Jeśli istnieje, baza danych zostanie usunięta.

Ostrzeżenie: Cała baza danych zostanie usunięta i nie zostanie podjęta żadna próba usunięcia tylko obiektów bazy danych używanych przez model dla tego kontekstu.

EnsureDeletedAsync(CancellationToken)

Asynchronicznie gwarantuje, że baza danych dla kontekstu nie istnieje. Jeśli nie istnieje, nie zostanie podjęta żadna akcja. Jeśli istnieje, baza danych zostanie usunięta.

Ostrzeżenie: Cała baza danych zostanie usunięta i nie zostanie podjęta żadna próba usunięcia tylko obiektów bazy danych używanych przez model dla tego kontekstu.

Dotyczy