EntityFrameworkServicesBuilder Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Eine Generator-API, die für Datenbankanbieter entwickelt wurde, die beim Registrieren von Diensten verwendet werden sollen.
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
- Vererbung
-
EntityFrameworkServicesBuilder
- Abgeleitet
- Implementiert
Hinweise
Anbieter sollten eine instance dieser Klasse erstellen, deren Methoden zum Registrieren von Diensten verwenden und dann aufrufenTryAddCoreServices(), um die verbleibenden Entity Framework-Dienste auszufüllen.
Relationale Anbieter sollten stattdessen "EntityFrameworkRelationalServicesBuilder" verwenden.
Entity Framework stellt sicher, dass Dienste mit dem entsprechenden Bereich registriert werden. In einigen Fällen kann ein Anbieter einen Dienst mit einem anderen Bereich registrieren, aber es muss sehr darauf geachtet werden, dass alle abhängigkeiten den neuen Bereich verarbeiten können und dass er kein Problem für Dienste verursacht, die davon abhängen.
Weitere Informationen und Beispiele finden Sie unter Implementierung von Datenbankanbietern und -erweiterungen .
Konstruktoren
EntityFrameworkServicesBuilder(IServiceCollection) |
Wird von Datenbankanbietern verwendet, um eine neue EntityFrameworkServicesBuilder für die Registrierung von Anbieterdiensten zu erstellen. Relationale Anbieter sollten "EntityFrameworkRelationalServicesBuilder" verwenden. |
Felder
CoreServices |
Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann. |
Eigenschaften
ServiceCollectionMap |
Zugriff auf die zugrunde liegende ServiceCollectionMap. |
Methoden
GetServiceCharacteristics(Type) |
Ruft den ServiceCharacteristics für den angegebenen Diensttyp ab. |
TryAdd(Type, Object) |
Fügt nur dann eine Implementierung eines Entity Framework-Diensts hinzu, wenn sie noch nicht registriert wurde. Diese Methode kann nur für Singleton-Dienste verwendet werden. |
TryAdd(Type, Type) |
Fügt nur dann eine Implementierung eines Entity Framework-Diensts hinzu, wenn sie noch nicht registriert wurde. Der Bereich des Diensts wird automatisch von Entity Framework definiert. |
TryAdd(Type, Type, Func<IServiceProvider,Object>) |
Fügt nur dann eine Factory für einen Entity Framework-Dienst hinzu, wenn sie noch nicht registriert wurde. Der Bereich des Diensts wird automatisch von Entity Framework definiert. |
TryAdd<TService,TImplementation>() |
Fügt nur dann eine Implementierung eines Entity Framework-Diensts hinzu, wenn sie noch nicht registriert wurde. Der Bereich des Diensts wird automatisch von Entity Framework definiert. |
TryAdd<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Fügt nur dann eine Factory für einen Entity Framework-Dienst hinzu, wenn sie noch nicht registriert wurde. Der Bereich des Diensts wird automatisch von Entity Framework definiert. |
TryAdd<TService>(Func<IServiceProvider,TService>) |
Fügt nur dann eine Factory für einen Entity Framework-Dienst hinzu, wenn sie noch nicht registriert wurde. Der Bereich des Diensts wird automatisch von Entity Framework definiert. |
TryAdd<TService>(TService) |
Fügt nur dann eine Implementierung eines Entity Framework-Diensts hinzu, wenn sie noch nicht registriert wurde. Diese Methode kann nur für Singleton-Dienste verwendet werden. |
TryAddCoreServices() |
Registriert Standardimplementierungen aller Dienste, die noch nicht vom Anbieter registriert wurden. Datenbankanbieter müssen diese Methode als letzten Schritt der Dienstregistrierung aufrufen, d. h. nachdem alle Anbieterdienste registriert wurden. |
TryAddProviderSpecificServices(Action<ServiceCollectionMap>) |
Datenbankanbieter sollten diese Methode für den Zugriff auf die zugrunde liegende ServiceCollectionMap aufrufen, damit anbieterspezifische Dienste registriert werden können. Beachten Sie, dass Implementierungen von Entity Framework-Diensten direkt bei und EntityFrameworkServicesBuilder nicht über diese Methode registriert werden sollten. |
TryGetServiceCharacteristics(Type) |
Ruft den ServiceCharacteristics für den angegebenen Diensttyp ab. |
Explizite Schnittstellenimplementierungen
IInfrastructure<IServiceCollection>.Instance |
Ruft die ab, die IServiceCollection konfiguriert wird. Diese Eigenschaft ist für die Verwendung durch Erweiterungsmethoden vorgesehen, die Dienste verwenden müssen, die nicht direkt auf der öffentlichen API-Oberfläche verfügbar gemacht werden. |
Erweiterungsmethoden
GetInfrastructure<T>(IInfrastructure<T>) |
Ruft den Wert aus einer Eigenschaft ab, die mit IInfrastructure<T>ausgeblendet wird. Diese Methode wird in der Regel von Datenbankanbietern (und anderen Erweiterungen) verwendet. Es wird im Allgemeinen nicht im Anwendungscode verwendet. |
Gilt für:
Entity Framework