Microsoft.EntityFrameworkCore.Infrastructure Namespace

Classes

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 trecho 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.

ConventionAnnotatable

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

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 opções gerenciadas pelo núcleo do Entity Framework, em vez daquelas 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 no 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 de Database e ela não foi projetada para ser construída diretamente no código do aplicativo.

DbContextAttribute

Identifica o ao DbContext qual uma classe pertence. Por exemplo, esse atributo é usado para identificar a qual contexto uma migração se aplica.

DbContextFactoryOptions

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

DbContextOptionsExtensionInfo

Informações/metadados para um IDbContextOptionsExtension.

DebugView

Um espaço reservado para cadeias de caracteres de depuração geradas lentamente que podem ser expandidas no depurador para gerar e exibi-las.

DesignTimeProviderServicesAttribute

Identifica onde encontrar 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 o 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 fazer isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão do Entity Framework Core.

EntityFrameworkRelationalServicesBuilder

Uma API de 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 de 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 sobre StringBuilder o qual 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) no 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 por Migrações.

ModelSource

Uma implementação de IModelSource que 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 que retorna instâncias em DbContext pool. Descartar a instância retornada por essa fábrica as retorna para o mecanismo de pooling interno.

ProductInfo

Classe auxiliar para localizar a versão do Entity Framework Core que está 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 do 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 de 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.

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 reescritas 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ço raiz.

SpatialiteLoader

Localiza e carrega SpatiaLite.

SqliteDbContextOptionsBuilder

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

SqlServerDbContextOptionsBuilder

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

TypeExtensions

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

Normalmente, essas extensões 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 e comportamentos padrão para cada tipo de aviso.

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

Estruturas

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 do 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 do Entity Framework Core.

ServiceCharacteristics

Características de um determinado serviço EF.

Interfaces

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 .

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

IAnnotation

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

Normalmente, essa interface é 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 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 por CosmosDbContextOptionsBuilder para ocultar métodos que são usados por métodos de extensão do provedor de banco de dados, mas que não se destinam a serem chamados por 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 um 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 por DbContextOptionsBuilder para ocultar métodos que são usados por métodos de extensão do provedor de banco de dados, mas que não se destinam a serem chamados por desenvolvedores de aplicativos.

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

IDbContextOptionsExtension

Interface para extensões armazenadas no Extensions.

Normalmente, essa interface é 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 coletar informações de depuração. Essa interface provavelmente será mesclada IDbContextOptionsExtension no EF Core 3.0.

Normalmente, essa interface é 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 é implementada explicitamente 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.

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

IInMemoryDbContextOptionsBuilderInfrastructure

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

IInternalServiceCollectionMap

Expõe métodos que permitem que os provedores registrem objetos de dependência de serviço do 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 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.

Normalmente, essa interface é 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. Normalmente, isso é implementado por provedores de banco de dados para garantir que todas as dependências de runtime específicas do banco de dados sejam usadas.

Normalmente, essa interface é 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 com base em um contexto. Normalmente, isso é implementado por provedores de banco de dados para garantir que quaisquer convenções e validação específicas ao banco de dados sejam usadas.

Normalmente, essa interface é 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 .

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

IRelationalDbContextOptionsBuilderInfrastructure

Implementado explicitamente por RelationalDbContextOptionsBuilder<TBuilder,TExtension> para 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 por 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

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 a 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 que são usados como eventId ao registrar mensagens nos componentes do SQLite Design Entity Framework Core.

SqlServerDesignEventId

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