Поделиться через


IMutableNavigation Интерфейс

Определение

Представляет свойство навигации, которое можно использовать для навигации по связи.

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
Реализации

Комментарии

Этот интерфейс используется во время создания модели и позволяет изменять метаданные. После построения INavigation модели представляет доступное только для чтения представление одних и того же метаданных.

Дополнительные сведения и примеры см. в разделе Моделирование типов сущностей и связей .

Свойства

ClrType

Возвращает тип значения, который содержит объект, подобный свойству.

(Унаследовано от IReadOnlyPropertyBase)
DeclaringEntityType

Возвращает тип, которому принадлежит это свойство навигации.

DeclaringType

Возвращает тип, которому принадлежит этот объект, похожий на свойство.

(Унаследовано от IReadOnlyPropertyBase)
FieldInfo

FieldInfo Возвращает для базового поля CLR для этого объекта, подобного свойству. Это может быть null для свойств тени или если резервное поле неизвестно.

(Унаследовано от IReadOnlyPropertyBase)
ForeignKey

Получает внешний ключ, определяющий связь, на которую будет перемещаться это свойство навигации.

Inverse

Возвращает обратную навигацию.

IsCollection

Возвращает значение, указывающее, является ли свойство навигации свойством коллекции.

(Унаследовано от IReadOnlyNavigationBase)
IsEagerLoaded

Определяет, следует ли загружать эту навигацию по умолчанию.

IsOnDependent

Возвращает значение, указывающее, определено ли свойство навигации на зависимой стороне базового внешнего ключа.

(Унаследовано от IReadOnlyNavigation)
Item[String]

Возвращает значение заметки с заданным именем, возвращая null значение , если она не существует.

(Унаследовано от IReadOnlyAnnotatable)
LazyLoadingEnabled

Определяет, должна ли эта навигация загружаться отложенно, если включена отложенная загрузка и в модели настроен механизм отложенной загрузки.

(Унаследовано от IReadOnlyNavigationBase)
Name

Возвращает имя объекта, похожего на свойство.

(Унаследовано от IReadOnlyPropertyBase)
PropertyInfo

PropertyInfo Возвращает для базового свойства CLR для этого объекта, похожего на свойство. Это может быть null для свойств тени или, если они сопоставлены непосредственно с полем.

(Унаследовано от IReadOnlyPropertyBase)
Sentinel

Возвращает значение sentinel, указывающее, что это свойство не задано.

(Унаследовано от IReadOnlyPropertyBase)
TargetEntityType

Возвращает тип сущности, в которую будет вмещать экземпляры этого свойства навигации.

Методы

AddAnnotation(String, Object)

Добавляет заметку к этому объекту. Вызывает исключение, если заметка с указанным именем уже существует.

(Унаследовано от IMutableAnnotatable)
AddAnnotations(IEnumerable<IAnnotation>)

Добавляет заметки в объект .

(Унаследовано от IMutableAnnotatable)
AddRuntimeAnnotation(String, Object)

Добавляет заметку среды выполнения к этому объекту. Вызывает исключение, если заметка с указанным именем уже существует.

(Унаследовано от IAnnotatable)
AnnotationsToDebugString(Int32)

Возвращает отладочную строку для всех заметок, объявленных в объекте .

(Унаследовано от IReadOnlyAnnotatable)
FindAnnotation(String)

Возвращает заметку с заданным именем, возвращающую null значение , если она не существует.

(Унаследовано от IReadOnlyAnnotatable)
FindRuntimeAnnotation(String)

Возвращает заметку среды выполнения с заданным именем, возвращающую null значение , если она не существует.

(Унаследовано от IAnnotatable)
FindRuntimeAnnotationValue(String)

Возвращает значение заметки среды выполнения с заданным именем, возвращая null значение , если оно не существует.

(Унаследовано от IAnnotatable)
GetAnnotation(String)

Возвращает заметку с заданным именем, вызывая исключение, если она не существует.

(Унаследовано от IReadOnlyAnnotatable)
GetAnnotations()

Возвращает все заметки для текущего объекта.

(Унаследовано от IReadOnlyAnnotatable)
GetCollectionAccessor()

IClrCollectionAccessor Возвращает для этого свойства навигации, если это навигация коллекции.

(Унаследовано от INavigationBase)
GetCurrentValueComparer()

IComparer<T> Возвращает объект для сравнения значений в отслеживаемых IUpdateEntry записях.

(Унаследовано от IPropertyBase)
GetFieldName()

Возвращает имя резервного поля для этого свойства или null значение , если резервное поле неизвестно.

(Унаследовано от IReadOnlyPropertyBase)
GetGetter()

IClrPropertyGetter Возвращает объект для чтения значения этого свойства.

(Унаследовано от IPropertyBase)
GetIndex()

Возвращает индекс свойства для этого свойства.

(Унаследовано от IPropertyBase)
GetMemberInfo(Boolean, Boolean)

PropertyInfo Возвращает или FieldInfo , который должен использоваться для получения или задания значения для заданного свойства.

(Унаследовано от IPropertyBase)
GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Возвращает значение заметки среды выполнения с заданным именем, добавляя его, если оно не существует.

(Унаследовано от IAnnotatable)
GetPropertyAccessMode()

Возвращает объект , используемый PropertyAccessMode для этого объекта, похожего на свойство.

(Унаследовано от IReadOnlyPropertyBase)
GetRuntimeAnnotations()

Возвращает все заметки среды выполнения для текущего объекта .

(Унаследовано от IAnnotatable)
IsIndexerProperty()

Возвращает значение, указывающее, является ли это свойством индексатора. Свойство индексатора — это свойство, доступ к которому осуществляется через индексатор в классе сущности.

(Унаследовано от IReadOnlyPropertyBase)
IsShadowProperty()

Возвращает значение, указывающее, является ли это теневым свойством. Теневое свойство — это свойство, которое не имеет соответствующего свойства в классе сущностей. Текущее значение свойства хранится в , ChangeTracker а не в экземплярах класса сущностей.

(Унаследовано от IReadOnlyPropertyBase)
RemoveAnnotation(String)

Удаляет заданную заметку из этого объекта.

(Унаследовано от IMutableAnnotatable)
RemoveRuntimeAnnotation(String)

Удаляет заданную заметку среды выполнения из этого объекта.

(Унаследовано от IAnnotatable)
SetAnnotation(String, Object)

Задает заметку, хранящуюся в заданном ключе. Перезаписывает существующую заметку, если заметка с указанным именем уже существует.

(Унаследовано от IMutableAnnotatable)
SetField(String)

Задает базовое поле CLR, которое должно использовать это свойство.

(Унаследовано от IMutablePropertyBase)
SetInverse(MemberInfo)

Задает обратную навигацию.

SetInverse(String)

Задает обратную навигацию.

SetIsEagerLoaded(Nullable<Boolean>)

Задает значение, указывающее, следует ли загружать эту навигацию по умолчанию.

(Унаследовано от IMutableNavigationBase)
SetIsLoadedWhenNoTracking(Object)

Вызывает SetLoaded(Object, String, Boolean) , INavigationBase чтобы пометить его как загруженный, если запрос без отслеживания не стремится загрузить эту связь.

(Унаследовано от INavigationBase)
SetLazyLoadingEnabled(Nullable<Boolean>)

Задает значение, указывающее, должна ли эта навигация быть включена для отложенной загрузки.

(Унаследовано от IMutableNavigationBase)
SetOrRemoveAnnotation(String, Object)

Задает заметку, хранящуюся под заданным именем. Перезаписывает существующую заметку, если заметка с указанным именем уже существует. Удаляет существующую заметку, если null она указана.

(Унаследовано от IMutableAnnotatable)
SetPropertyAccessMode(Nullable<PropertyAccessMode>)

Задает объект , используемый PropertyAccessMode для этого свойства.

(Унаследовано от IMutablePropertyBase)
SetRuntimeAnnotation(String, Object)

Задает заметку среды выполнения, хранящуюся под заданным ключом. Перезаписывает существующую заметку, если заметка с указанным именем уже существует.

(Унаследовано от IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

Создает понятное представление заданных метаданных.

Предупреждение. Не полагайтесь на формат возвращаемой строки. Он предназначен только для отладки и может изменяться произвольно между выпусками.

(Унаследовано от IReadOnlyNavigation)

Явные реализации интерфейса

INavigationBase.DeclaringEntityType

Возвращает тип сущности, к которому принадлежит это свойство навигации.

(Унаследовано от INavigation)
INavigationBase.GetCollectionAccessor()

IClrCollectionAccessor Возвращает для этого свойства навигации, если это навигация коллекции.

(Унаследовано от INavigation)
INavigationBase.Inverse

Возвращает обратную навигацию.

(Унаследовано от INavigation)
INavigationBase.IsCollection

Возвращает значение, указывающее, является ли свойство навигации свойством коллекции.

(Унаследовано от INavigation)
INavigationBase.TargetEntityType

Возвращает тип сущности, в которую будет вмещать экземпляры этого свойства навигации.

(Унаследовано от INavigation)
IPropertyBase.GetPropertyAccessMode()

Возвращает объект , используемый PropertyAccessMode для этого свойства. null указывает, что используется режим доступа к свойству по умолчанию.

(Унаследовано от INavigationBase)
IReadOnlyNavigationBase.DeclaringEntityType

Возвращает тип сущности, к которому принадлежит это свойство навигации.

(Унаследовано от IReadOnlyNavigation)
IReadOnlyNavigationBase.Inverse

Возвращает обратную навигацию.

(Унаследовано от IReadOnlyNavigation)
IReadOnlyNavigationBase.IsCollection

Возвращает значение, указывающее, является ли свойство навигации свойством коллекции.

(Унаследовано от IReadOnlyNavigation)
IReadOnlyNavigationBase.TargetEntityType

Возвращает тип сущности, в которую будет вмещать экземпляры этого свойства навигации.

(Унаследовано от IReadOnlyNavigation)
IReadOnlyPropertyBase.IsShadowProperty()

Возвращает значение, указывающее, является ли это теневым свойством. Теневое свойство — это свойство, которое не имеет соответствующего свойства в классе сущностей. Текущее значение свойства хранится в , ChangeTracker а не в экземплярах класса сущностей.

(Унаследовано от IReadOnlyNavigationBase)

Методы расширения

AnnotationsToDebugString(IAnnotatable, Int32)

Возвращает отладочную строку для всех заметок, объявленных в объекте .

GetAnnotation(IAnnotatable, String)

Возвращает заметку с заданным именем, вызывая исключение, если она не существует.

SetIsLoadedWhenNoTracking(INavigationBase, Object)

Вызывает SetLoaded(Object, String, Boolean) , INavigationBase чтобы пометить его как загруженный, если запрос без отслеживания не стремится загрузить эту связь.

AddAnnotations(IMutableAnnotatable, IEnumerable<IAnnotation>)

Добавляет заметки в объект .

GetAnnotation(IMutableAnnotatable, String)

Возвращает заметку с заданным именем, вызывая исключение, если она не существует.

GetOrAddAnnotation(IMutableAnnotatable, String, String)

Возвращает существующую заметку с заданным ключом или добавляет новую заметку, если она не существует.

SetOrRemoveAnnotation(IMutableAnnotatable, String, Object)

Задает заметку, хранящуюся под заданным именем. Перезаписывает существующую заметку, если заметка с указанным именем уже существует. Удаляет существующую заметку, если null она указана.

FindInverse(IMutableNavigation)
Является устаревшей..

Возвращает свойство навигации на другом конце связи. Возвращает значение null , если на другом конце связи не определено свойство навигации.

GetTargetType(IMutableNavigation)
Является устаревшей..

Возвращает тип сущности, который будет содержать экземпляр данного свойства навигации (или экземпляры , если это навигация по коллекции).

SetIsEagerLoaded(IMutableNavigation, Nullable<Boolean>)

Задает значение, указывающее, следует ли загружать эту навигацию по умолчанию.

SetField(IMutablePropertyBase, String)

Задает базовое поле CLR, которое должно использовать это свойство.

Резервные поля обычно находятся по соглашению, как описано здесь: http://go.microsoft.com/fwlink/?LinkId=723277. Этот метод полезен для явной настройки резервных полей в случаях, когда правильное поле не найдено в соответствии с соглашением.

По умолчанию резервное поле, если оно найдено или указано, используется при создании новых объектов, обычно при запросе сущностей из базы данных. Свойства используются для всех других обращений. Это можно изменить, вызвав .SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)

SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)

Задает объект , используемый PropertyAccessMode для этого свойства.

SetPropertyAccessMode(IMutablePropertyBase, Nullable<PropertyAccessMode>)

Задает объект , используемый PropertyAccessMode для этого свойства.

FindInverse(INavigation)
Является устаревшей..
Является устаревшей..

Возвращает свойство навигации на другом конце связи. Возвращает значение NULL, если на другом конце связи не определено свойство навигации.

GetCollectionAccessor(INavigation)

IClrCollectionAccessor Возвращает для этого свойства навигации, которое должно быть навигацией коллекции.

GetTargetType(INavigation)
Является устаревшей..
Является устаревшей..

Возвращает тип сущности, который будет содержать экземпляр данного свойства навигации (или экземпляры , если это навигация по коллекции).

IsCollection(INavigation)
Является устаревшей..
Является устаревшей..

Возвращает значение, указывающее, является ли данное свойство навигации свойством коллекции.

IsDependentToPrincipal(INavigation)
Является устаревшей..
Является устаревшей..

Возвращает значение, указывающее, является ли данное свойство навигации свойством навигации для зависимого типа сущности, указывающего на основную сущность.

IsEagerLoaded(INavigation)
Является устаревшей..
Является устаревшей..

Возвращает значение, указывающее, должна ли эта навигация загружаться по умолчанию.

ToDebugString(INavigation, MetadataDebugStringOptions, Int32)

Создает понятное представление заданных метаданных.

Предупреждение. Не полагайтесь на формат возвращаемой строки. Он предназначен только для отладки и может изменяться произвольно между выпусками.

GetCurrentValueComparer(IPropertyBase)

IComparer<T> Возвращает объект для сравнения значений в отслеживаемых IUpdateEntry записях.

GetFieldName(IPropertyBase)

Возвращает имя резервного поля для этого свойства или null значение , если резервное поле неизвестно.

GetGetter(IPropertyBase)

IClrPropertyGetter Возвращает объект для чтения значения этого свойства.

Обратите внимание, что вызов этого метода для свойства тени (IsShadowProperty(IPropertyBase)) является ошибкой, так как такое свойство не имеет связанного .MemberInfo

GetIndex(IPropertyBase)

Возвращает индекс свойства для этого свойства.

GetMemberInfo(IPropertyBase, Boolean, Boolean)

PropertyInfo Возвращает или FieldInfo , который должен использоваться для получения или задания значения для заданного свойства.

Обратите внимание, что вызов этого метода для свойства тени (IsShadowProperty(IPropertyBase)) является ошибкой, так как такое свойство не имеет связанного .MemberInfo

GetPropertyAccessMode(IPropertyBase)

Возвращает объект , используемый PropertyAccessMode для этого свойства. null указывает, что используется режим доступа к свойству по умолчанию.

IsIndexerProperty(IPropertyBase)

Возвращает значение, указывающее, является ли это свойством индексатора. Свойство индексатора — это свойство, доступ к которому осуществляется через индексатор в классе сущности.

IsShadowProperty(IPropertyBase)
Является устаревшей..

Возвращает значение, указывающее, является ли это теневым свойством. Теневое свойство — это свойство, которое не имеет соответствующего свойства в классе сущностей. Текущее значение свойства хранится в , ChangeTracker а не в экземплярах класса сущностей.

Применяется к