OwnedNavigationBuilder Classe

Definição

Fornece uma API simples para configurar uma navegação para um tipo de entidade de propriedade.

public class OwnedNavigationBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>
public class OwnedNavigationBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Builders.IConventionEntityTypeBuilder>
type OwnedNavigationBuilder = class
    interface IInfrastructure<InternalEntityTypeBuilder>
type OwnedNavigationBuilder = class
    interface IInfrastructure<IConventionEntityTypeBuilder>
Public Class OwnedNavigationBuilder
Implements IInfrastructure(Of InternalEntityTypeBuilder)
Public Class OwnedNavigationBuilder
Implements IInfrastructure(Of IConventionEntityTypeBuilder)
Herança
OwnedNavigationBuilder
Derivado
Implementações
IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder> IInfrastructure<IConventionEntityTypeBuilder>

Construtores

OwnedNavigationBuilder(EntityType, EntityType, InternalRelationshipBuilder)

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 nenhuma versão. Você só deve usá-lo diretamente em seu código com muito cuidado e saber que isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão de Entity Framework Core.

OwnedNavigationBuilder(IMutableForeignKey)

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 nenhuma versão. Você só deve usá-lo diretamente em seu código com muito cuidado e saber que isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão de Entity Framework Core.

Propriedades

Builder

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 nenhuma versão. Você só deve usá-lo diretamente em seu código com muito cuidado e saber que isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão de Entity Framework Core.

DependentEntityType

Obtém o tipo de entidade dependente usado para configurar essa relação.

Metadata

A chave estrangeira que representa essa propriedade.

OwnedEntityType

O tipo de entidade de propriedade que está sendo configurado.

PrincipalEntityType

Obtém o tipo de entidade principal usado para configurar essa relação.

Métodos

FindRelatedEntityType(String, String)

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 nenhuma versão. Você só deve usá-lo diretamente em seu código com muito cuidado e saber que isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão de Entity Framework Core.

FindRelatedEntityType(Type, String)

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 nenhuma versão. Você só deve usá-lo diretamente em seu código com muito cuidado e saber que isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão de Entity Framework Core.

HasAnnotation(String, Object)

Adiciona ou atualiza uma anotação no tipo de entidade de propriedade. Se uma anotação com a chave especificada em annotation já existir, seu valor será atualizado.

HasChangeTrackingStrategy(ChangeTrackingStrategy)

Configura o ChangeTrackingStrategy a ser usado para esse tipo de entidade. Essa estratégia indica como o contexto detecta alterações nas propriedades de uma instância do tipo de entidade.

HasData(IEnumerable<Object>)

Configura esta entidade para ter dados de semente. Ele é usado para gerar migrações de movimento de dados.

HasData(Object[])

Configura esta entidade para ter dados de semente. Ele é usado para gerar migrações de movimento de dados.

HasIndex(String[])

Configura um índice nas propriedades especificadas. Se houver um índice existente no determinado conjunto de propriedades, o índice existente será retornado para configuração.

HasKey(String[])

Define as propriedades que compõem a chave primária para esse tipo de entidade de propriedade.

HasOne(String)

Configura uma relação em que esse tipo de entidade tem uma referência que aponta para uma única instância do outro tipo na relação.

Observe que a chamada desse método sem parâmetros configurará explicitamente esse lado da relação para não usar nenhuma propriedade de navegação, mesmo que exista uma propriedade no tipo de entidade. Se a propriedade de navegação for usada, ela deverá ser especificada.

Depois de chamar esse método, você deve encadear uma chamada para WithMany(String) ou WithOne(String) para configurar completamente a relação. Chamar apenas esse método sem a chamada encadeada não produzirá uma relação válida.

HasOne(String, String)

Configura uma relação em que esse tipo de entidade tem uma referência que aponta para uma única instância do outro tipo na relação.

Observe que a chamada desse método sem parâmetros configurará explicitamente esse lado da relação para não usar nenhuma propriedade de navegação, mesmo que exista uma propriedade no tipo de entidade. Se a propriedade de navegação for usada, ela deverá ser especificada.

Depois de chamar esse método, você deve encadear uma chamada para WithMany(String) ou WithOne(String) para configurar completamente a relação. Chamar apenas esse método sem a chamada encadeada não produzirá uma relação válida.

HasOne(Type, String)

Configura uma relação em que esse tipo de entidade tem uma referência que aponta para uma única instância do outro tipo na relação.

Observe que a chamada desse método sem parâmetros configurará explicitamente esse lado da relação para não usar nenhuma propriedade de navegação, mesmo que exista uma propriedade no tipo de entidade. Se a propriedade de navegação for usada, ela deverá ser especificada.

Depois de chamar esse método, você deve encadear uma chamada para WithMany(String) ou WithOne(String) para configurar completamente a relação. Chamar apenas esse método sem a chamada encadeada não produzirá uma relação válida.

Ignore(String)

Exclui a propriedade fornecida do tipo de entidade. Esse método é normalmente usado para remover propriedades ou navegações do tipo de entidade de propriedade que foram adicionadas por convenção.

IndexerProperty(Type, String)

Retorna um objeto que pode ser usado para configurar uma propriedade do tipo de entidade. Se não existir nenhuma propriedade com o nome fornecido, uma nova propriedade será adicionada.

As propriedades do indexador são armazenadas na entidade usando um indexador que fornece o nome de propriedade fornecido.

IndexerProperty<TProperty>(String)

Retorna um objeto que pode ser usado para configurar uma propriedade do tipo de entidade. Se não existir nenhuma propriedade com o nome fornecido, uma nova propriedade será adicionada.

As propriedades do indexador são armazenadas na entidade usando um indexador que fornece o nome de propriedade fornecido.

Navigation(String)

Retorna um objeto que pode ser usado para configurar uma propriedade de navegação existente do tipo de propriedade para seu proprietário. É um erro para que a propriedade de navegação não exista.

OwnsMany(String, String)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsMany(String, String, Action<OwnedNavigationBuilder>)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsMany(String, Type, String)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsMany(String, Type, String, Action<OwnedNavigationBuilder>)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsMany(Type, String)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsMany(Type, String, Action<OwnedNavigationBuilder>)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsOne(String, String)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade. O valor da chave da entidade de destino é sempre propagado da entidade à qual ele pertence.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsOne(String, String, Action<OwnedNavigationBuilder>)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade. O valor da chave da entidade de destino é sempre propagado da entidade à qual ele pertence.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsOne(String, Type, String)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade. O valor da chave da entidade de destino é sempre propagado da entidade à qual ele pertence.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsOne(String, Type, String, Action<OwnedNavigationBuilder>)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade. O valor da chave da entidade de destino é sempre propagado da entidade à qual ele pertence.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsOne(Type, String)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade. O valor da chave da entidade de destino é sempre propagado da entidade à qual ele pertence.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

OwnsOne(Type, String, Action<OwnedNavigationBuilder>)

Configura uma relação na qual a entidade de destino pertence (ou parte dela) essa entidade. O valor da chave da entidade de destino é sempre propagado da entidade à qual ele pertence.

O tipo de entidade de destino para cada relação de propriedade é tratado como um tipo de entidade diferente, mesmo se a navegação for do mesmo tipo. A configuração do tipo de entidade de destino não é aplicada ao tipo de entidade de destino de outras relações de propriedade.

A maioria das operações em uma entidade de propriedade precisa acessá-la por meio da entidade do proprietário usando a navegação correspondente.

Depois de chamar esse método, você deve encadear uma chamada para WithOwner(String) para configurar totalmente a relação.

Property(String)

Retorna um objeto que pode ser usado para configurar uma propriedade do tipo de entidade de propriedade. Se não existir nenhuma propriedade com o nome fornecido, uma nova propriedade será adicionada.

Ao adicionar uma nova propriedade com essa sobrecarga, o nome da propriedade deve corresponder ao nome de uma propriedade ou campo CLR no tipo de entidade. Essa sobrecarga não pode ser usada para adicionar uma nova propriedade de estado de sombra.

Property(Type, String)

Retorna um objeto que pode ser usado para configurar uma propriedade do tipo de entidade de propriedade. Se não existir nenhuma propriedade com o nome fornecido, uma nova propriedade será adicionada.

Ao adicionar uma nova propriedade, se existir uma propriedade com o mesmo nome na classe de entidade, ela será adicionada ao modelo. Se não existir nenhuma propriedade na classe de entidade, uma nova propriedade de estado de sombra será adicionada. Uma propriedade de estado de sombra é aquela que não tem uma propriedade correspondente na classe de entidade. O valor atual da propriedade é armazenado em ChangeTracker em vez de ser armazenado em instâncias da classe de entidade.

Property<TProperty>(String)

Retorna um objeto que pode ser usado para configurar uma propriedade do tipo de entidade de propriedade. Se não existir nenhuma propriedade com o nome fornecido, uma nova propriedade será adicionada.

Ao adicionar uma nova propriedade, se existir uma propriedade com o mesmo nome na classe de entidade, ela será adicionada ao modelo. Se não existir nenhuma propriedade na classe de entidade, uma nova propriedade de estado de sombra será adicionada. Uma propriedade de estado de sombra é aquela que não tem uma propriedade correspondente na classe de entidade. O valor atual da propriedade é armazenado em ChangeTracker em vez de ser armazenado em instâncias da classe de entidade.

UpdateBuilder<T>(Func<T>)

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 nenhuma versão. Você só deve usá-lo diretamente em seu código com muito cuidado e saber que isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão de Entity Framework Core.

UsePropertyAccessMode(PropertyAccessMode)

Define o a PropertyAccessMode ser usado para todas as propriedades desse tipo de entidade.

Por padrão, o campo de backup, se for encontrado por convenção ou tiver sido especificado, será usado quando novos objetos forem construídos, normalmente quando as entidades são consultadas do banco de dados. As propriedades são usadas para todos os outros acessos. Chamar esse método alterará esse comportamento para todas as propriedades desse tipo de entidade, conforme descrito na PropertyAccessMode enumeração.

Chamar esse método substitui para todas as propriedades dessa entidade digite qualquer modo de acesso que tenha sido definido no modelo.

WithOwner(String)

Configura a relação com o proprietário.

Observe que a chamada desse método sem parâmetros configurará explicitamente esse lado da relação para não usar nenhuma propriedade de navegação, mesmo que exista uma propriedade no tipo de entidade. Se a propriedade de navegação for usada, ela deverá ser especificada.

Implantações explícitas de interface

IInfrastructure<IConventionEntityTypeBuilder>.Instance

Obtém o construtor interno que está sendo usado para configurar o tipo de entidade de propriedade.

IInfrastructure<InternalEntityTypeBuilder>.Instance

Obtém o construtor interno que está sendo usado para configurar o tipo de entidade de propriedade.

Métodos de Extensão

ToJsonProperty(OwnedNavigationBuilder, String)

Configura o nome da propriedade para a qual a entidade está mapeada quando armazenada como um documento inserido.

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). Em geral, ele não é usado no código do aplicativo.

IInfrastructure<T> é usado 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 gravados por provedores de banco de dados, etc.

ToFunction(OwnedNavigationBuilder, String)

Configura a função que o tipo de entidade mapeia ao direcionar para um banco de dados relacional.

ToFunction(OwnedNavigationBuilder, String, Action<TableValuedFunctionBuilder>)

Configura a função que o tipo de entidade mapeia ao direcionar para um banco de dados relacional.

ToTable(OwnedNavigationBuilder, String)

Configura a tabela para a qual o tipo de entidade mapeia ao direcionar um banco de dados relacional.

ToTable(OwnedNavigationBuilder, String, Boolean)

Configura a tabela para a qual o tipo de entidade mapeia ao direcionar um banco de dados relacional.

ToTable(OwnedNavigationBuilder, String, String)

Configura a tabela para a qual o tipo de entidade mapeia ao direcionar um banco de dados relacional.

ToTable(OwnedNavigationBuilder, String, String, Boolean)

Configura a tabela para a qual o tipo de entidade mapeia ao direcionar um banco de dados relacional.

HasCheckConstraint(OwnedNavigationBuilder, String, String)

Configura uma restrição de verificação de banco de dados ao direcionar para um banco de dados relacional.

ForSqlServerIsMemoryOptimized(OwnedNavigationBuilder, Boolean)
Obsoleto.

Configura a tabela para a qual a entidade mapeia ao direcionar SQL Server como com otimização de memória.

IsMemoryOptimized(OwnedNavigationBuilder, Boolean)

Configura a tabela para a qual a entidade mapeia ao direcionar SQL Server como com otimização de memória.

Aplica-se a