EntityFrameworkServicesBuilder Classe

Définition

API de générateur conçue pour les fournisseurs de base de données à utiliser lors de l’inscription de services.

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
Héritage
EntityFrameworkServicesBuilder
Dérivé
Implémente

Remarques

Les fournisseurs doivent créer un instance de cette classe, utiliser ses méthodes pour inscrire des services, puis appeler TryAddCoreServices() pour remplir les services Entity Framework restants.

Les fournisseurs relationnels doivent utiliser 'EntityFrameworkRelationalServicesBuilder à la place.

Entity Framework garantit que les services sont inscrits avec l’étendue appropriée. Dans certains cas, un fournisseur peut inscrire un service avec une étendue différente, mais il faut veiller à ce que toutes ses dépendances puissent gérer la nouvelle étendue et qu’elle ne provoque pas de problème pour les services qui en dépendent.

Pour plus d’informations et d’exemples, consultez Implémentation des fournisseurs et extensions de base de données .

Constructeurs

EntityFrameworkServicesBuilder(IServiceCollection)

Utilisé par les fournisseurs de base de données pour créer un nouveau EntityFrameworkServicesBuilder pour l’inscription des services de fournisseur. Les fournisseurs relationnels doivent utiliser « EntityFrameworkRelationalServicesBuilder ».

Champs

CoreServices

Il s’agit d’une API interne qui prend en charge l’infrastructure Entity Framework Core et qui n’est pas soumise aux mêmes normes de compatibilité que les API publiques. Il peut être modifié ou supprimé sans préavis dans n’importe quelle version. Vous devez uniquement l’utiliser directement dans votre code avec une extrême prudence et en sachant que cela peut entraîner des échecs d’application lors de la mise à jour vers une nouvelle version d’Entity Framework Core.

Propriétés

ServiceCollectionMap

Accès au sous-jacent ServiceCollectionMap.

Méthodes

GetServiceCharacteristics(Type)

Obtient le ServiceCharacteristics pour le type de service donné.

TryAdd(Type, Object)

Ajoute une implémentation d’un service Entity Framework uniquement si un service n’a pas déjà été inscrit. Cette méthode ne peut être utilisée que pour les services singleton.

TryAdd(Type, Type)

Ajoute une implémentation d’un service Entity Framework uniquement si un service n’a pas déjà été inscrit. L’étendue du service est automatiquement définie par Entity Framework.

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

Ajoute une fabrique pour un service Entity Framework uniquement si un service n’a pas déjà été inscrit. L’étendue du service est automatiquement définie par Entity Framework.

TryAdd<TService,TImplementation>()

Ajoute une implémentation d’un service Entity Framework uniquement si un service n’a pas déjà été inscrit. L’étendue du service est automatiquement définie par Entity Framework.

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

Ajoute une fabrique pour un service Entity Framework uniquement si un service n’a pas déjà été inscrit. L’étendue du service est automatiquement définie par Entity Framework.

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

Ajoute une fabrique pour un service Entity Framework uniquement si un service n’a pas déjà été inscrit. L’étendue du service est automatiquement définie par Entity Framework.

TryAdd<TService>(TService)

Ajoute une implémentation d’un service Entity Framework uniquement si un service n’a pas déjà été inscrit. Cette méthode ne peut être utilisée que pour les services singleton.

TryAddCoreServices()

Inscrit les implémentations par défaut de tous les services qui ne sont pas déjà inscrits par le fournisseur. Les fournisseurs de base de données doivent appeler cette méthode comme dernière étape de l’inscription du service, c’est-à-dire une fois que tous les services du fournisseur ont été inscrits.

TryAddProviderSpecificServices(Action<ServiceCollectionMap>)

Les fournisseurs de base de données doivent appeler cette méthode pour accéder au sous-jacent ServiceCollectionMap afin que les services spécifiques au fournisseur puissent être inscrits. Notez que les implémentations des services Entity Framework doivent être inscrites directement sur et EntityFrameworkServicesBuilder non par le biais de cette méthode.

TryGetServiceCharacteristics(Type)

Obtient le ServiceCharacteristics pour le type de service donné.

Implémentations d’interfaces explicites

IInfrastructure<IServiceCollection>.Instance

Obtient le IServiceCollection en cours de configuration.

Cette propriété est destinée à être utilisée par les méthodes d’extension qui doivent utiliser des services non directement exposés dans la surface d’API publique.

Méthodes d’extension

GetInfrastructure<T>(IInfrastructure<T>)

Obtient la valeur d’une propriété masquée à l’aide IInfrastructure<T>de .

Cette méthode est généralement utilisée par les fournisseurs de base de données (et d’autres extensions). Il n’est généralement pas utilisé dans le code de l’application.

S’applique à