Udostępnij za pośrednictwem


EntityFrameworkServicesBuilder Klasa

Definicja

Interfejs API konstruktora zaprojektowany dla dostawców baz danych do użycia podczas rejestrowania usług.

public class EntityFrameworkServicesBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.Extensions.DependencyInjection.IServiceCollection>
public class EntityFrameworkServicesBuilder
type EntityFrameworkServicesBuilder = class
    interface IInfrastructure<IServiceCollection>
type EntityFrameworkServicesBuilder = class
Public Class EntityFrameworkServicesBuilder
Implements IInfrastructure(Of IServiceCollection)
Public Class EntityFrameworkServicesBuilder
Dziedziczenie
EntityFrameworkServicesBuilder
Pochodne
Implementuje

Uwagi

Dostawcy powinni utworzyć wystąpienie tej klasy, użyć jej metod do rejestrowania usług, a następnie wywołać wywołanie TryAddCoreServices() w celu wypełnienia pozostałych usług Entity Framework.

Zamiast tego dostawcy relacyjni powinni użyć klasy EntityFrameworkRelationalServicesBuilder.

Program Entity Framework zapewnia, że usługi są zarejestrowane w odpowiednim zakresie. W niektórych przypadkach dostawca może zarejestrować usługę w innym zakresie, ale należy zachować szczególną ostrożność, że wszystkie jego zależności mogą obsługiwać nowy zakres i że nie powoduje problemu z usługami zależnymi od niego.

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

Konstruktory

EntityFrameworkServicesBuilder(IServiceCollection)

Używane przez dostawców baz danych do tworzenia nowego EntityFrameworkServicesBuilder na potrzeby rejestracji usług dostawcy. Dostawcy relacyjni powinni używać elementu "EntityFrameworkRelationalServicesBuilder".

Pola

CoreServices

Jest to wewnętrzny interfejs API, który obsługuje infrastrukturę platformy Entity Framework Core i nie podlega tym samym standardom zgodności co publiczne interfejsy API. Można je zmienić lub usunąć bez powiadomienia w jakiejkolwiek wersji. Należy używać go bezpośrednio bezpośrednio w kodzie z wyjątkową ostrożnością i wiedząc, że może to spowodować błędy aplikacji podczas aktualizowania do nowej wersji programu Entity Framework Core.

Właściwości

ServiceCollectionMap

Dostęp do bazowego ServiceCollectionMap.

Metody

GetServiceCharacteristics(Type)

Pobiera wartość ServiceCharacteristics dla danego typu usługi.

TryAdd(Type, Object)

Dodaje implementację usługi Entity Framework tylko wtedy, gdy jeszcze jej nie zarejestrowano. Tej metody można używać tylko w przypadku pojedynczych usług.

TryAdd(Type, Type)

Dodaje implementację usługi Entity Framework tylko wtedy, gdy jeszcze jej nie zarejestrowano. Zakres usługi jest automatycznie definiowany przez program Entity Framework.

TryAdd(Type, Type, Func<IServiceProvider,Object>)

Dodaje fabrykę dla usługi Entity Framework tylko wtedy, gdy jeszcze jej nie zarejestrowano. Zakres usługi jest automatycznie definiowany przez program Entity Framework.

TryAdd<TService,TImplementation>()

Dodaje implementację usługi Entity Framework tylko wtedy, gdy jeszcze jej nie zarejestrowano. Zakres usługi jest automatycznie definiowany przez program Entity Framework.

TryAdd<TService,TImplementation>(Func<IServiceProvider,TImplementation>)

Dodaje fabrykę dla usługi Entity Framework tylko wtedy, gdy jeszcze jej nie zarejestrowano. Zakres usługi jest automatycznie definiowany przez program Entity Framework.

TryAdd<TService>(Func<IServiceProvider,TService>)

Dodaje fabrykę dla usługi Entity Framework tylko wtedy, gdy jeszcze jej nie zarejestrowano. Zakres usługi jest automatycznie definiowany przez program Entity Framework.

TryAdd<TService>(TService)

Dodaje implementację usługi Entity Framework tylko wtedy, gdy jeszcze jej nie zarejestrowano. Tej metody można używać tylko w przypadku pojedynczych usług.

TryAddCoreServices()

Rejestruje domyślne implementacje wszystkich usług, które nie zostały jeszcze zarejestrowane przez dostawcę. Dostawcy baz danych muszą wywołać tę metodę jako ostatni krok rejestracji usługi — czyli po zarejestrowaniu wszystkich usług dostawcy.

TryAddProviderSpecificServices(Action<ServiceCollectionMap>)

Dostawcy baz danych powinni wywołać tę metodę dostępu do bazowego, ServiceCollectionMap tak aby można było zarejestrować usługi specyficzne dla dostawcy. Należy pamiętać, że implementacje usług Entity Framework powinny być rejestrowane bezpośrednio w obiekcie EntityFrameworkServicesBuilder , a nie za pomocą tej metody.

TryGetServiceCharacteristics(Type)

Pobiera wartość ServiceCharacteristics dla danego typu usługi.

Jawne implementacje interfejsu

IInfrastructure<IServiceCollection>.Instance

IServiceCollection Pobiera konfigurowane.

Ta właściwość jest przeznaczona do użycia przez metody rozszerzeń, które muszą korzystać z usług, które nie są bezpośrednio widoczne na publicznej powierzchni interfejsu API.

Metody rozszerzania

GetInfrastructure<T>(IInfrastructure<T>)

Pobiera wartość z właściwości ukrytej przy użyciu polecenia IInfrastructure<T>.

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

Dotyczy