Partilhar via


IMutableNavigation Interface

Definição

Representa uma propriedade de navegação que pode ser usada para navegar em uma relação.

public interface IMutableNavigation : Microsoft.EntityFrameworkCore.Metadata.IMutableAnnotatable, Microsoft.EntityFrameworkCore.Metadata.INavigation
public interface IMutableNavigation : Microsoft.EntityFrameworkCore.Metadata.IMutablePropertyBase, Microsoft.EntityFrameworkCore.Metadata.INavigation
public interface IMutableNavigation : Microsoft.EntityFrameworkCore.Metadata.IMutableNavigationBase, Microsoft.EntityFrameworkCore.Metadata.INavigation
public interface IMutableNavigation : Microsoft.EntityFrameworkCore.Metadata.IMutableNavigationBase, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyNavigation
type IMutableNavigation = interface
    interface INavigation
    interface IPropertyBase
    interface IAnnotatable
    interface IMutableAnnotatable
type IMutableNavigation = interface
    interface INavigation
    interface IPropertyBase
    interface IAnnotatable
    interface IMutablePropertyBase
    interface IMutableAnnotatable
type IMutableNavigation = interface
    interface INavigation
    interface INavigationBase
    interface IPropertyBase
    interface IAnnotatable
    interface IMutableNavigationBase
    interface IMutablePropertyBase
    interface IMutableAnnotatable
type IMutableNavigation = interface
    interface IReadOnlyNavigation
    interface IReadOnlyNavigationBase
    interface IReadOnlyPropertyBase
    interface IReadOnlyAnnotatable
    interface IMutableNavigationBase
    interface IMutablePropertyBase
    interface IMutableAnnotatable
Public Interface IMutableNavigation
Implements IMutableAnnotatable, INavigation
Public Interface IMutableNavigation
Implements IMutablePropertyBase, INavigation
Public Interface IMutableNavigation
Implements IMutableNavigationBase, INavigation
Public Interface IMutableNavigation
Implements IMutableNavigationBase, IReadOnlyNavigation
Implementações

Comentários

Essa interface é usada durante a criação do modelo e permite que os metadados sejam modificados. Depois que o modelo é criado, INavigation representa uma exibição somente leitura dos mesmos metadados.

Confira Modelagem de tipos de entidade e relações para obter mais informações e exemplos.

Propriedades

ClrType

Obtém o tipo de valor que esse objeto semelhante à propriedade contém.

(Herdado de IReadOnlyPropertyBase)
DeclaringEntityType

Obtém o tipo ao qual essa propriedade de navegação pertence.

DeclaringType

Obtém o tipo ao qual este objeto semelhante à propriedade pertence.

(Herdado de IReadOnlyPropertyBase)
FieldInfo

Obtém o FieldInfo para o campo CLR subjacente para esse objeto semelhante a uma propriedade. Isso pode ser null para propriedades de sombra ou se o campo de suporte não for conhecido.

(Herdado de IReadOnlyPropertyBase)
ForeignKey

Obtém a chave estrangeira que define a relação que essa propriedade de navegação navegará.

Inverse

Obtém a navegação inversa.

IsCollection

Obtém um valor que indica se a propriedade de navegação é uma propriedade de coleção.

(Herdado de IReadOnlyNavigationBase)
IsEagerLoaded

Determina se essa navegação deve ser carregada por padrão.

IsOnDependent

Obtém um valor que indica se a propriedade de navegação é definida no lado dependente da chave estrangeira subjacente.

(Herdado de IReadOnlyNavigation)
Item[String]

Obtém o valor da anotação com o nome fornecido, retornando null se ela não existir.

(Herdado de IReadOnlyAnnotatable)
LazyLoadingEnabled

Determina se essa navegação deve ou não ser carregada lentamente se o carregamento lento estiver habilitado e um mecanismo para carregamento lento tiver sido configurado no modelo.

(Herdado de IReadOnlyNavigationBase)
Name

Obtém o nome desse objeto semelhante a uma propriedade.

(Herdado de IReadOnlyPropertyBase)
PropertyInfo

Obtém o PropertyInfo da propriedade CLR subjacente para esse objeto semelhante a uma propriedade. Isso pode ser null para propriedades de sombra ou se mapeadas diretamente para um campo.

(Herdado de IReadOnlyPropertyBase)
Sentinel

Obtém o valor sentinela que indica que essa propriedade não está definida.

(Herdado de IReadOnlyPropertyBase)
TargetEntityType

Obtém o tipo de entidade do qual essa propriedade de navegação conterá uma(s) instância(s).

Métodos

AddAnnotation(String, Object)

Adiciona uma anotação a esse objeto . Gerará se já existir uma anotação com o nome especificado.

(Herdado de IMutableAnnotatable)
AddAnnotations(IEnumerable<IAnnotation>)

Adiciona anotações a um objeto .

(Herdado de IMutableAnnotatable)
AddRuntimeAnnotation(String, Object)

Adiciona uma anotação de runtime a esse objeto. Gerará se já existir uma anotação com o nome especificado.

(Herdado de IAnnotatable)
AnnotationsToDebugString(Int32)

Obtém a cadeia de caracteres de depuração para todas as anotações declaradas no objeto .

(Herdado de IReadOnlyAnnotatable)
FindAnnotation(String)

Obtém a anotação com o nome fornecido, retornando null se ela não existir.

(Herdado de IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

Obtém a anotação de runtime com o nome fornecido, retornando null se ela não existir.

(Herdado de IAnnotatable)
FindRuntimeAnnotationValue(String)

Obtém o valor da anotação de runtime com o nome fornecido, retornando null se ela não existir.

(Herdado de IAnnotatable)
GetAnnotation(String)

Obtém a anotação com o nome fornecido, lançando se ela não existir.

(Herdado de IReadOnlyAnnotatable)
GetAnnotations()

Obtém todas as anotações no objeto atual.

(Herdado de IReadOnlyAnnotatable)
GetCollectionAccessor()

Obtém o IClrCollectionAccessor para essa propriedade de navegação, se for uma navegação de coleção.

(Herdado de INavigationBase)
GetCurrentValueComparer()

Obtém um IComparer<T> para comparar valores em entradas controladas IUpdateEntry .

(Herdado de IPropertyBase)
GetFieldName()

Obtém o nome do campo de suporte para essa propriedade ou null se o campo de suporte não é conhecido.

(Herdado de IReadOnlyPropertyBase)
GetGetter()

Obtém um IClrPropertyGetter para ler o valor dessa propriedade.

(Herdado de IPropertyBase)
GetIndex()

Obtém o índice de propriedade para essa propriedade.

(Herdado de IPropertyBase)
GetMemberInfo(Boolean, Boolean)

Obtém o PropertyInfo ou FieldInfo que deve ser usado para obter ou definir um valor para a propriedade fornecida.

(Herdado de IPropertyBase)
GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Obtém o valor da anotação de runtime com o nome fornecido, adicionando-o se um não existir.

(Herdado de IAnnotatable)
GetPropertyAccessMode()

Obtém o PropertyAccessMode que está sendo usado para esse objeto semelhante a uma propriedade.

(Herdado de IReadOnlyPropertyBase)
GetRuntimeAnnotations()

Obtém todas as anotações de runtime no objeto atual.

(Herdado de IAnnotatable)
IsIndexerProperty()

Obtém um valor que indica se esta é uma propriedade do indexador. Uma propriedade do indexador é aquela que é acessada por meio de um indexador na classe de entidade.

(Herdado de IReadOnlyPropertyBase)
IsShadowProperty()

Obtém um valor que indica se esta é uma propriedade de sombra. Uma propriedade de sombra é aquela que não tem uma propriedade correspondente na classe de entidade. O valor atual da propriedade é armazenado no em ChangeTracker vez de ser armazenado em instâncias da classe de entidade.

(Herdado de IReadOnlyPropertyBase)
RemoveAnnotation(String)

Remove a anotação fornecida desse objeto .

(Herdado de IMutableAnnotatable)
RemoveRuntimeAnnotation(String)

Remove a anotação de runtime fornecida desse objeto .

(Herdado de IAnnotatable)
SetAnnotation(String, Object)

Define a anotação armazenada sob a chave fornecida. Substitui a anotação existente se já existir uma anotação com o nome especificado.

(Herdado de IMutableAnnotatable)
SetField(String)

Define o campo CLR subjacente que essa propriedade deve usar.

(Herdado de IMutablePropertyBase)
SetInverse(MemberInfo)

Define a navegação inversa.

SetInverse(String)

Define a navegação inversa.

SetIsEagerLoaded(Nullable<Boolean>)

Define um valor que indica se essa navegação deve ser carregada por padrão.

(Herdado de IMutableNavigationBase)
SetIsLoadedWhenNoTracking(Object)

Chama SetLoaded(Object, String, Boolean) um INavigationBase para marcá-lo como carregado quando uma consulta sem acompanhamento tiver carregado ansiosamente essa relação.

(Herdado de INavigationBase)
SetLazyLoadingEnabled(Nullable<Boolean>)

Define um valor que indica se essa navegação deve ser habilitada para carregamento lento.

(Herdado de IMutableNavigationBase)
SetOrRemoveAnnotation(String, Object)

Define a anotação armazenada sob o nome fornecido. Substitui a anotação existente se já existir uma anotação com o nome especificado. Remove a anotação existente se null for fornecido.

(Herdado de IMutableAnnotatable)
SetPropertyAccessMode(Nullable<PropertyAccessMode>)

Define o PropertyAccessMode a ser usado para essa propriedade.

(Herdado de IMutablePropertyBase)
SetRuntimeAnnotation(String, Object)

Define a anotação de runtime armazenada sob a chave fornecida. Substitui a anotação existente se já existir uma anotação com o nome especificado.

(Herdado de IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

Cria uma representação legível por humanos dos metadados determinados.

Aviso: não dependa do formato da cadeia de caracteres retornada. Ele foi projetado apenas para depuração e pode mudar arbitrariamente entre as versões.

(Herdado de IReadOnlyNavigation)

Implantações explícitas de interface

INavigationBase.DeclaringEntityType

Obtém o tipo de entidade ao qual essa propriedade de navegação pertence.

(Herdado de INavigation)
INavigationBase.GetCollectionAccessor()

Obtém o IClrCollectionAccessor para essa propriedade de navegação, se for uma navegação de coleção.

(Herdado de INavigation)
INavigationBase.Inverse

Obtém a navegação inversa.

(Herdado de INavigation)
INavigationBase.IsCollection

Obtém um valor que indica se a propriedade de navegação é uma propriedade de coleção.

(Herdado de INavigation)
INavigationBase.TargetEntityType

Obtém o tipo de entidade do qual essa propriedade de navegação conterá uma(s) instância(s).

(Herdado de INavigation)
IPropertyBase.GetPropertyAccessMode()

Obtém o PropertyAccessMode que está sendo usado para essa propriedade. null indica que o modo de acesso à propriedade padrão está sendo usado.

(Herdado de INavigationBase)
IReadOnlyNavigationBase.DeclaringEntityType

Obtém o tipo de entidade ao qual essa propriedade de navegação pertence.

(Herdado de IReadOnlyNavigation)
IReadOnlyNavigationBase.Inverse

Obtém a navegação inversa.

(Herdado de IReadOnlyNavigation)
IReadOnlyNavigationBase.IsCollection

Obtém um valor que indica se a propriedade de navegação é uma propriedade de coleção.

(Herdado de IReadOnlyNavigation)
IReadOnlyNavigationBase.TargetEntityType

Obtém o tipo de entidade do qual essa propriedade de navegação conterá uma(s) instância(s).

(Herdado de IReadOnlyNavigation)
IReadOnlyPropertyBase.IsShadowProperty()

Obtém um valor que indica se esta é uma propriedade de sombra. Uma propriedade de sombra é aquela que não tem uma propriedade correspondente na classe de entidade. O valor atual da propriedade é armazenado no em ChangeTracker vez de ser armazenado em instâncias da classe de entidade.

(Herdado de IReadOnlyNavigationBase)

Métodos de Extensão

AnnotationsToDebugString(IAnnotatable, Int32)

Obtém a cadeia de caracteres de depuração para todas as anotações declaradas no objeto .

GetAnnotation(IAnnotatable, String)

Obtém a anotação com o nome fornecido, lançando se ela não existir.

SetIsLoadedWhenNoTracking(INavigationBase, Object)

Chama SetLoaded(Object, String, Boolean) um INavigationBase para marcá-lo como carregado quando uma consulta sem acompanhamento tiver carregado ansiosamente essa relação.

AddAnnotations(IMutableAnnotatable, IEnumerable<IAnnotation>)

Adiciona anotações a um objeto .

GetAnnotation(IMutableAnnotatable, String)

Obtém a anotação com o nome fornecido, lançando se ela não existir.

GetOrAddAnnotation(IMutableAnnotatable, String, String)

Obtém a anotação existente com uma determinada chave ou adiciona uma nova anotação se uma não existir.

SetOrRemoveAnnotation(IMutableAnnotatable, String, Object)

Define a anotação armazenada sob o nome fornecido. Substitui a anotação existente se já existir uma anotação com o nome especificado. Remove a anotação existente se null for fornecido.

FindInverse(IMutableNavigation)
Obsoleto.

Obtém a propriedade de navegação na outra extremidade da relação. Retornará null se não houver nenhuma propriedade de navegação definida na outra extremidade da relação.

GetTargetType(IMutableNavigation)
Obsoleto.

Obtém o tipo de entidade do qual uma determinada propriedade de navegação conterá uma instância do (ou manterá instâncias de se for uma navegação de coleção).

SetIsEagerLoaded(IMutableNavigation, Nullable<Boolean>)

Define um valor que indica se essa navegação deve ser carregada por padrão.

SetField(IMutablePropertyBase, String)

Define o campo CLR subjacente que essa propriedade deve usar.

Os campos de suporte normalmente são encontrados por convenção, conforme descrito aqui: http://go.microsoft.com/fwlink/?LinkId=723277. Esse método é útil para definir campos de backup explicitamente nos casos em que o campo correto não é encontrado por convenção.

Por padrão, o campo de suporte, se for encontrado ou tiver sido especificado, será usado quando novos objetos forem construídos, normalmente quando entidades são consultadas do banco de dados. As propriedades são usadas para todos os outros acessos. Isso pode ser alterado chamando SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>).

SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)

Define o PropertyAccessMode a ser usado para essa propriedade.

SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)

Define o PropertyAccessMode a ser usado para essa propriedade.

FindInverse(INavigation)
Obsoleto.
Obsoleto.

Obtém a propriedade de navegação na outra extremidade da relação. Retornará nulo se não houver nenhuma propriedade de navegação definida na outra extremidade da relação.

GetCollectionAccessor(INavigation)

Obtém o IClrCollectionAccessor para essa propriedade de navegação, que deve ser uma navegação de coleção.

GetTargetType(INavigation)
Obsoleto.
Obsoleto.

Obtém o tipo de entidade do qual uma determinada propriedade de navegação conterá uma instância do (ou manterá instâncias de se for uma navegação de coleção).

IsCollection(INavigation)
Obsoleto.
Obsoleto.

Obtém um valor que indica se a propriedade de navegação fornecida é uma propriedade de coleção.

IsDependentToPrincipal(INavigation)
Obsoleto.
Obsoleto.

Obtém um valor que indica se a propriedade de navegação fornecida é a propriedade de navegação no tipo de entidade dependente que aponta para a entidade principal.

IsEagerLoaded(INavigation)
Obsoleto.
Obsoleto.

Obtém um valor que indica se essa navegação deve ser carregada por padrão.

ToDebugString(INavigation, MetadataDebugStringOptions, Int32)

Cria uma representação legível por humanos dos metadados determinados.

Aviso: não dependa do formato da cadeia de caracteres retornada. Ele foi projetado apenas para depuração e pode mudar arbitrariamente entre as versões.

GetCurrentValueComparer(IPropertyBase)

Obtém um IComparer<T> para comparar valores em entradas controladas IUpdateEntry .

GetFieldName(IPropertyBase)

Obtém o nome do campo de suporte para essa propriedade ou null se o campo de suporte não é conhecido.

GetGetter(IPropertyBase)

Obtém um IClrPropertyGetter para ler o valor dessa propriedade.

Observe que é um erro chamar esse método para uma propriedade de sombra (IsShadowProperty(IPropertyBase)), pois essa propriedade não tem nenhum associado MemberInfo.

GetIndex(IPropertyBase)

Obtém o índice de propriedade para essa propriedade.

GetMemberInfo(IPropertyBase, Boolean, Boolean)

Obtém o PropertyInfo ou FieldInfo que deve ser usado para obter ou definir um valor para a propriedade fornecida.

Observe que é um erro chamar esse método para uma propriedade de sombra (IsShadowProperty(IPropertyBase)), pois essa propriedade não tem nenhum associado MemberInfo.

GetPropertyAccessMode(IPropertyBase)

Obtém o PropertyAccessMode que está sendo usado para essa propriedade. null indica que o modo de acesso à propriedade padrão está sendo usado.

IsIndexerProperty(IPropertyBase)

Obtém um valor que indica se esta é uma propriedade do indexador. Uma propriedade do indexador é aquela que é acessada por meio de um indexador na classe de entidade.

IsShadowProperty(IPropertyBase)
Obsoleto.

Obtém um valor que indica se esta é uma propriedade de sombra. Uma propriedade de sombra é aquela que não tem uma propriedade correspondente na classe de entidade. O valor atual da propriedade é armazenado no em ChangeTracker vez de ser armazenado em instâncias da classe de entidade.

Aplica-se a