Microsoft.EntityFrameworkCore.Infrastructure Namespace

Classes

Nome Descrição
AccessorExtensions

Métodos de extensão para IInfrastructure<T>.

Esses métodos normalmente são usados por provedores de banco de dados (e outras extensões). Geralmente, eles não são usados no código do aplicativo.

Annotatable

Classe base para tipos que dão suporte a anotações de leitura e gravação.

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

AnnotatableBase

Classe base para tipos que dão suporte a anotações de leitura e gravação.

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

AnnotatableBuilder<TMetadata,TModelBuilder>

Um tipo base com uma superfície de API simples para configurar um ConventionAnnotatable.

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

AnnotatableExtensions

Métodos de extensão para IReadOnlyAnnotatable.

Annotation

Um pedaço arbitrário de metadados que pode ser armazenado em um objeto que implementa IReadOnlyAnnotatable.

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

AzureSqlDbContextOptionsBuilder

Permite que SQL do Azure configuração específica seja executada em DbContextOptions.

AzureSynapseDbContextOptionsBuilder

Permite que Azure Synapse configuração específica seja executada em DbContextOptions.

ConventionAnnotatable

Classe base para tipos que dão suporte a anotações de convenção de leitura e gravação.

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

CoreOptionsExtension

Representa as opções gerenciadas pelo núcleo do Entity Framework, em oposição às gerenciadas por provedores de banco de dados ou extensões. Essas opções são definidas usando DbContextOptionsBuilder.

As instâncias dessa classe foram projetadas para serem imutáveis. Para alterar uma opção, chame um dos 'Com...' métodos para obter uma nova instância com a opção alterada.

CosmosDbContextOptionsBuilder

Permite que a configuração específica do Cosmos seja executada em DbContextOptions.

DatabaseFacade

Fornece acesso a informações e operações relacionadas ao banco de dados para um contexto. As instâncias dessa classe normalmente são obtidas Database e não foram projetadas para serem diretamente construídas no código do aplicativo.

DbContextAttribute

Identifica ao DbContext qual uma classe pertence. Por exemplo, esse atributo é usado para identificar a qual contexto uma migração se aplica. Ele também é usado para indicar os contextos usados em um assembly para ferramentas de tempo de design.

DbContextFactoryOptions

Fornece informações sobre o ambiente em que um aplicativo está sendo executado.

DbContextModelAttribute

Identifica a RuntimeModel implementação que deve ser usada para um determinado contexto.

DbContextOptionsExtensionInfo

Informações/metadados para um IDbContextOptionsExtension.

DebugView

Um espaço reservado para cadeias de caracteres de depuração geradas com preguiçosa que podem ser expandidas no depurador para gerá-las e exibi-las.

DesignTimeProviderServicesAttribute

Identifica onde localizar os serviços de tempo de design para um determinado provedor de banco de dados. Esse atributo deve estar presente no assembly primário do provedor de banco de dados.

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

EntityFrameworkEventSource

Uma emissão EventSource de dados de contador de desempenho do Entity Framework.

EntityFrameworkInternalAttribute

Marca uma API como interna para Entity Framework Core. Essas APIs não estão sujeitas aos mesmos padrões de compatibilidade que as APIs públicas. Ele pode ser alterado ou removido sem aviso prévio em qualquer versão. Você só deve usar essas APIs diretamente em seu código com extrema cautela e saber que isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão Entity Framework Core.

EntityFrameworkMetricsData

Implementação de métricas de desempenho.

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

EntityFrameworkRelationalServicesBuilder

Uma API do construtor projetada para provedores de banco de dados relacionais a serem usados ao registrar serviços.

EntityFrameworkServiceCollectionExtensions

Métodos de extensão para configurar serviços relacionados ao Entity Framework em um IServiceCollection.

EntityFrameworkServicesBuilder

Uma API do construtor projetada para provedores de banco de dados usar ao registrar serviços.

ExpressionExtensions

Métodos de extensão para Expression tipos.

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

IndentedStringBuilder

Um wrapper fino que StringBuilder adiciona recuo a cada linha criada.

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

InMemoryDbContextOptionsBuilder

Permite que a configuração específica na memória seja executada em DbContextOptions.

LazyLoaderExtensions

Métodos de extensão para o ILazyLoader serviço que tornam mais conveniente usar de classes de entidade.

MethodInfoExtensions

Métodos de extensão para MethodInfo.

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

ModelCacheKey

Uma chave que identifica exclusivamente o modelo para um determinado contexto. Isso é usado para armazenar e pesquisar um modelo armazenado em cache para um determinado contexto. Essa implementação padrão usa o tipo de contexto como chave, supondo que todos os contextos de um determinado tipo tenham o mesmo modelo.

ModelCacheKeyFactory

Cria chaves que identificam exclusivamente o modelo para um determinado contexto. Isso é usado para armazenar e pesquisar um modelo armazenado em cache para um determinado contexto. Essa implementação padrão usa o tipo de contexto como chave, supondo que todos os contextos de um determinado tipo tenham o mesmo modelo.

ModelCacheKeyFactoryDependencies

Classe de parâmetro de dependências de serviço para ModelCacheKeyFactory

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

ModelCustomizer

Cria o modelo para um determinado contexto. Essa implementação cria o modelo chamando OnModelCreating(ModelBuilder) o contexto.

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

ModelCustomizerDependencies

Classe de parâmetro de dependências de serviço para ModelCustomizer

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

ModelDependencies

Classe de parâmetro de dependências de serviço para IModel

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

ModelRuntimeInitializer

Inicializa um IModel com as dependências de runtime.

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

ModelRuntimeInitializerDependencies

Classe de parâmetro de dependências de serviço para ModelRuntimeInitializer

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

ModelSnapshot

Classe base para o instantâneo do IModel estado gerado pelas Migrações.

ModelSource

Uma implementação que IModelSource produz um modelo com base nas DbSet<TEntity> propriedades expostas no contexto. O modelo é armazenado em cache para evitar recriá-lo sempre que é solicitado.

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

ModelSourceDependencies

Classe de parâmetro de dependências de serviço para ModelSource

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

ModelValidator

O validador que impõe regras principais comuns para todos os provedores.

ModelValidatorDependencies

Classe de parâmetro de dependências de serviço para ModelValidator

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

NavigationBaseExtensions

Métodos de extensão para INavigationBase.

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

PooledDbContextFactory<TContext>

Uma fábrica retornando instâncias em DbContext pool. Descartar a instância retornada por essa fábrica retorna-as ao mecanismo de pool interno.

ProductInfo

Classe auxiliar para localizar a versão de Entity Framework Core sendo usada.

RelationalDbContextOptionsBuilder<TBuilder,TExtension>

Permite que a configuração específica do banco de dados relacional seja executada em DbContextOptions.

RelationalModelCustomizer

Cria o modelo para um determinado contexto.

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

RelationalModelDependencies

As dependências de serviço de modelo relacional.

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

RelationalModelExtensions

Métodos de extensão específicos relacionais para IModel.

RelationalModelRuntimeInitializer

Inicializa um IModel com as dependências de runtime.

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

RelationalModelRuntimeInitializerDependencies

Classe de parâmetro de dependências de serviço para RelationalModelRuntimeInitializer

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

RelationalModelValidator

O validador que impõe regras comuns para todos os provedores relacionais.

RelationalModelValidatorDependencies

Classe de parâmetro de dependências de serviço para RelationalModelValidator

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

RelationalOptionsExtension

Representa as opções gerenciadas pelos provedores de banco de dados relacionais. Essas opções são definidas usando DbContextOptionsBuilder.

RelationalOptionsExtension.RelationalExtensionInfo

Informações/metadados para um RelationalOptionsExtension.

RelationalPropertyExtensions

Métodos de extensão relacional para IReadOnlyProperty.

RelationalServiceCollectionExtensions

Métodos de extensão específicos do banco de dados relacional para IServiceCollection.

RuntimeAnnotatableBase

Classe base para tipos que dão suporte a anotações de leitura e gravação.

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

RuntimeModelDependencies

Classe de parâmetro de dependências de serviço para IReadOnlyModel

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

SensitiveDataLogger<T>

Um agente de encapsulamento para o qual o registro em log de dados confidenciais pode ser habilitado ou desabilitado.

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

ServiceCollectionMap

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

ServiceProviderAccessor

Esse tipo é adicionado como um serviço singleton ao provedor de serviços de aplicativo para fornecer acesso ao provedor de serviços raiz.

SpatialiteLoader

Localiza e carrega spatiaLite.

SqlEngineDbContextOptionsBuilder

Permite que SQL Server, SQL do Azure, Azure Synapse configuração específica sejam executadas em DbContextOptions.

SqlEngineDbContextOptionsBuilderBase<TSelf>

Classe base para construtores específicos SQL Server, SQL do Azure, Azure Synapse etc.

SqliteDbContextOptionsBuilder

Permite que a configuração específica do SQLite seja executada em DbContextOptions.

SqlServerDbContextOptionsBuilder

Permite que SQL Server configuração específica seja executada em DbContextOptions.

StructuredJsonPath

Representa um caminho JSON estruturado que consiste em segmentos de nome de propriedade e espaços reservados de índice de matriz, juntamente com valores de índice de runtime para posições de matriz.

TypeExtensions

Métodos de extensão para Type instâncias.

Essas extensões normalmente são usadas por provedores de banco de dados (e outras extensões). Geralmente, eles não são usados no código do aplicativo.

Uniquifier

Fornece métodos para manipular identificadores de cadeia de caracteres.

WarningsConfigurationBuilder

Configura o comportamento de runtime dos avisos gerados pelo Entity Framework. Você pode definir um comportamento padrão e comportamentos para cada tipo de aviso.

Essa classe é usada dentro da ConfigureWarnings(Action<WarningsConfigurationBuilder>) API e não foi projetada para ser construída diretamente no código do aplicativo.

Estruturas

Nome Descrição
ConcurrencyDetectorCriticalSectionDisposer

Um IDisposable retornado por um IConcurrencyDetector, que sairá da seção crítica em andamento quando descartado.

DbSetProperty

Um struct que representa facetas da DbSet<TEntity> propriedade definida no tipo derivado de DbContext.

EntityFrameworkServicesBuilder.ServiceCharacteristics

Essa é uma API interna que dá suporte à infraestrutura de Entity Framework Core e não está sujeita aos mesmos padrões de compatibilidade que as APIs públicas. Ele pode ser alterado ou removido sem aviso prévio em qualquer versão. Você só deve usá-lo diretamente em seu código com extrema cautela e saber que fazer isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão Entity Framework Core.

ServiceCharacteristics

Características de um determinado serviço EF.

Interfaces

Nome Descrição
IAnnotatable

Uma classe que expõe anotações em tempo de build e em tempo de execução. As anotações permitem que metadados arbitrários sejam armazenados em um objeto.

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

IAnnotation

Um pedaço arbitrário de metadados que pode ser armazenado em um objeto que implementa IReadOnlyAnnotatable.

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

IConcurrencyDetector

Usado por provedores de banco de dados e código interno do EF para detectar o acesso simultâneo a recursos não thread-safe.

ICoreSingletonOptions

Opções definidas no IServiceProvider nível singleton para controlar as opções principais.

ICosmosDbContextOptionsBuilderInfrastructure

Implementado explicitamente para CosmosDbContextOptionsBuilder ocultar métodos usados pelos métodos de extensão do provedor de banco de dados, mas que não se destinam a serem chamados pelos desenvolvedores de aplicativos.

ICurrentDbContext

Registrado como um serviço com escopo no provedor de serviços interno do Entity Framework para fornecer acesso ao atual DbContext que está sendo usado.

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

IDbContextFactory<TContext>

Uma fábrica para criar instâncias derivadas DbContext . Implemente essa interface para habilitar serviços de tempo de design para tipos de contexto que não têm um construtor padrão público. Em tempo de design, instâncias derivadas DbContext podem ser criadas para habilitar experiências específicas de tempo de design, como Migrações. Os serviços de tempo de design descobrirão automaticamente implementações dessa interface que estão no mesmo assembly que o contexto derivado.

IDbContextOptions

As opções a serem usadas por um DbContext. Normalmente, você substitui OnConfiguring(DbContextOptionsBuilder) ou usa uma DbContextOptionsBuilder para criar instâncias de classes que implementam essa interface, elas não são projetadas para serem criadas diretamente no código do aplicativo.

IDbContextOptionsBuilderInfrastructure

Implementado explicitamente para DbContextOptionsBuilder ocultar métodos usados pelos métodos de extensão do provedor de banco de dados, mas que não se destinam a serem chamados pelos desenvolvedores de aplicativos.

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

IDbContextOptionsConfiguration<TContext>

Configura as opções a serem usadas por um DbContext. Normalmente, você chama ConfigureDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime) para registrar essa classe, ela não foi projetada para ser construída diretamente no código do aplicativo.

IDbContextOptionsExtension

Interface para extensões armazenadas em Extensions.

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

IDbContextOptionsExtensionWithDebugInfo

Interface estendida para extensões que também permitem a coleta de informações de depuração. Essa interface provavelmente será mesclada IDbContextOptionsExtension no EF Core 3.0.

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

IDbSetFinder

Um serviço para localizar DbSet<TEntity> propriedades em um tipo que herda de DbContext.

IDesignTimeServices

Habilita a configuração de serviços de tempo de design. As ferramentas descobrirão automaticamente implementações dessa interface que estão no assembly de inicialização.

IInfrastructure<T>

Essa interface é explicitamente implementada por tipo para ocultar propriedades que não se destinam a serem usadas no código do aplicativo, mas podem ser usadas em métodos de extensão escritos por provedores de banco de dados etc.

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

IInMemoryDbContextOptionsBuilderInfrastructure

Implementado explicitamente para InMemoryDbContextOptionsBuilder ocultar métodos usados pelos métodos de extensão do provedor de banco de dados, mas que não se destinam a serem chamados pelos desenvolvedores de aplicativos.

IInternalServiceCollectionMap

Expõe métodos que permitem que os provedores registrem objetos de dependência de serviço EF no provedor de serviços interno.

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

ILazyLoader

Um serviço que pode ser injetado em entidades para dar a eles a capacidade de carregar propriedades de navegação automaticamente na primeira vez em que são acessadas.

IModelCacheKeyFactory

Cria chaves que identificam exclusivamente o modelo para um determinado contexto. Isso é usado para armazenar e pesquisar um modelo armazenado em cache para um determinado contexto.

IModelCustomizer

Executa uma configuração adicional do modelo além do que é descoberto por convenção.

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

IModelRuntimeInitializer

Inicializa um IModel com as dependências de runtime. Isso normalmente é implementado por provedores de banco de dados para garantir que quaisquer dependências de runtime específicas do banco de dados sejam usadas.

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

IModelSource

Produz um IModel baseado em um contexto. Isso normalmente é implementado por provedores de banco de dados para garantir que quaisquer convenções e validação específicas ao banco de dados sejam usadas.

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

IModelValidator

Valida um modelo depois que ele é criado.

IReadOnlyAnnotatable

Uma classe que dá suporte a anotações. As anotações permitem que metadados arbitrários sejam armazenados em um objeto.

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

IRelationalDbContextOptionsBuilderInfrastructure

Implementado explicitamente para RelationalDbContextOptionsBuilder<TBuilder,TExtension> ocultar métodos usados pelos métodos de extensão do provedor de banco de dados, mas que não se destinam a serem chamados pelos desenvolvedores de aplicativos.

IResettableService

Essa interface deve ser implementada por qualquer serviço que precise ser redefinido entre diferentes usos do mesmo DbContext em pools diferentes.

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

ISensitiveDataLogger

Um ILogger para o qual o registro em log de dados confidenciais pode ser habilitado ou desabilitado.

ISensitiveDataLogger<T>

Um ILogger<TCategoryName> para o qual o registro em log de dados confidenciais pode ser habilitado ou desabilitado.

ISingletonOptions

Implementado por qualquer classe que represente opções que só podem ser definidas no IServiceProvider nível singleton.

Enumerações

Nome Descrição
CoreEventId

Valores usados como eventId ao registrar mensagens dos principais componentes do Entity Framework.

DesignEventId
InMemoryEventId

Valores usados como eventId ao registrar mensagens do provedor de banco de dados na memória por meio ILoggerde .

MetadataDebugStringOptions

Opções para imprimir cadeia de caracteres de depuração de forma diferente para objetos de metadados.

RelationalDesignEventId
RelationalEventId

Valores usados como eventId ao registrar mensagens de um provedor de banco de dados relacional por meio ILoggerde .

SqliteDesignEventId

Valores usados como eventId ao registrar mensagens dos componentes Entity Framework Core de Design do SQLite.

SqlServerDesignEventId

Valores usados como eventId ao registrar mensagens dos componentes Entity Framework Core design do SQL Server.