Partilhar via


ServiceCollectionMap Classe

Definição

Fornece um mapa sobre um IServiceCollection que permite que as entradas sejam adicionadas ServiceDescriptor condicionalmente ou reescritas sem exigir verificações lineares da coleção de serviços sempre que isso for feito.

public class ServiceCollectionMap : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Internal.InternalServiceCollectionMap>
public class ServiceCollectionMap : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Infrastructure.IInternalServiceCollectionMap>
type ServiceCollectionMap = class
    interface IInfrastructure<InternalServiceCollectionMap>
type ServiceCollectionMap = class
    interface IInfrastructure<IInternalServiceCollectionMap>
Public Class ServiceCollectionMap
Implements IInfrastructure(Of InternalServiceCollectionMap)
Public Class ServiceCollectionMap
Implements IInfrastructure(Of IInternalServiceCollectionMap)
Herança
ServiceCollectionMap
Implementações
IInfrastructure<Microsoft.EntityFrameworkCore.Internal.InternalServiceCollectionMap> IInfrastructure<IInternalServiceCollectionMap>

Comentários

Observe que a coleção não deve ser modificada sem de outras maneiras enquanto está sendo gerenciada pelo mapa. A coleção pode ser usada da maneira normal após a conclusão das modificações usando o mapa.

Consulte Implementação de provedores de banco de dados e extensões para obter mais informações e exemplos.

Construtores

ServiceCollectionMap(IServiceCollection)

Cria um novo ServiceCollectionMap para operar no determinado IServiceCollection.

Propriedades

ServiceCollection

O IServiceCollection subjacente.

Métodos

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

Adiciona um serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAdd(Type, Type, ServiceLifetime)

Adiciona um serviço implementado pelo tipo concreto fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddEnumerable(Type, Type, Func<IServiceProvider,Object>, ServiceLifetime)

Adiciona um serviço implementado pelo alocador determinado à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddEnumerable(Type, Type, ServiceLifetime)

Adiciona um serviço implementado pelo tipo concreto fornecido à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddScoped(Type, Func<IServiceProvider,Object>)

Adiciona um Scoped serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddScoped(Type, Type)

Adiciona um Scoped serviço implementado pelo tipo concreto fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddScoped<TService,TImplementation>()

Adiciona um Scoped serviço implementado pelo tipo concreto fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

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

Adiciona um Scoped serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

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

Adiciona um Scoped serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddScopedEnumerable(Type, Type)

Adiciona um Scoped serviço implementado pelo tipo concreto fornecido à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddScopedEnumerable<TService,TImplementation>()

Adiciona um Scoped serviço implementado pelo tipo concreto fornecido à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

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

Adiciona um Scoped serviço implementado pelo alocador determinado à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddSingleton(Type, Func<IServiceProvider,Object>)

Adiciona um Singleton serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddSingleton(Type, Object)

Adiciona um Singleton serviço implementado pela instância especificada se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddSingleton(Type, Type)

Adiciona um Singleton serviço implementado pelo tipo concreto fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddSingleton<TService,TImplementation>()

Adiciona um Singleton serviço implementado pelo tipo concreto fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

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

Adiciona um Singleton serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

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

Adiciona um Singleton serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddSingleton<TService>(TService)

Adiciona um Singleton serviço implementado pela instância especificada se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddSingletonEnumerable(Type, Object)

Adiciona um Singleton serviço implementado pela instância fornecida à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddSingletonEnumerable(Type, Type)

Adiciona um Singleton serviço implementado pelo tipo concreto fornecido à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddSingletonEnumerable<TService,TImplementation>()

Adiciona um Singleton serviço implementado pelo tipo concreto fornecido à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

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

Adiciona um Singleton serviço implementado pelo alocador determinado à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddSingletonEnumerable<TService>(TService)

Adiciona um Singleton serviço implementado pela instância fornecida à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddTransient(Type, Func<IServiceProvider,Object>)

Adiciona um Transient serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddTransient(Type, Type)

Adiciona um Transient serviço implementado pelo tipo concreto fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddTransient<TService,TImplementation>()

Adiciona um Transient serviço implementado pelo tipo concreto fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

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

Adiciona um Transient serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

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

Adiciona um Transient serviço implementado pelo alocador fornecido se nenhum serviço para o tipo de serviço fornecido já tiver sido registrado.

TryAddTransientEnumerable(Type, Type)

Adiciona um Transient serviço implementado pelo tipo concreto fornecido à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

TryAddTransientEnumerable<TService,TImplementation>()

Adiciona um Transient serviço implementado pelo tipo concreto fornecido à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

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

Adiciona um Transient serviço implementado pelo alocador determinado à lista de serviços que implementam o contrato determinado. O serviço só será adicionado se a coleção não contiver nenhum outro registro para o mesmo tipo de serviço e implementação.

Implantações explícitas de interface

IInfrastructure<IInternalServiceCollectionMap>.Instance

Fornece um mapa sobre um IServiceCollection que permite que as entradas sejam adicionadas ServiceDescriptor condicionalmente ou reescritas sem exigir verificações lineares da coleção de serviços sempre que isso for feito.

IInfrastructure<InternalServiceCollectionMap>.Instance

Fornece um mapa sobre um IServiceCollection que permite que as entradas sejam adicionadas ServiceDescriptor condicionalmente ou reescritas sem exigir verificações lineares da coleção de serviços sempre que isso for feito.

Métodos de Extensão

GetInfrastructure<T>(IInfrastructure<T>)

Obtém o valor de uma propriedade que está sendo ocultada usando IInfrastructure<T>.

Esse método normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

Aplica-se a