IDatabaseCreator Interfejs
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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łady , zobacz Implementacja dostawców i rozszerzeń bazy danych .
Metody
CanConnect() |
Określa, czy baza danych jest dostępna i z nią można nawiązać połączenie. |
CanConnectAsync(CancellationToken) |
Określa, czy baza danych jest dostępna i z nią można nawiązać połączenie. |
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 jej schemat zostaną utworzone. Jeśli baza danych istnieje, nie zostanie podjęta żadna próba zapewnienia, że jest zgodna z modelem dla tego kontekstu. |
EnsureCreatedAsync(CancellationToken) |
Asynchronicznie zapewnia, że baza danych dla kontekstu istnieje. Jeśli istnieje, nie zostanie podjęta żadna akcja. Jeśli nie istnieje, baza danych i cały jej schemat zostaną utworzone. Jeśli baza danych istnieje, nie zostanie podjęta żadna próba zapewnienia, że jest zgodna z modelem dla tego kontekstu. |
EnsureDeleted() |
Zapewnia, ż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 jest usuwana bez wysiłku, aby usunąć tylko obiekty bazy danych, które są używane przez model dla tego kontekstu. |
EnsureDeletedAsync(CancellationToken) |
Asynchronicznie zapewnia, ż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 jest usuwana bez wysiłku, aby usunąć tylko obiekty bazy danych, które są używane przez model dla tego kontekstu. |