EntityFrameworkServicesBuilder Klasa
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.
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. |