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


CollectionOwnershipBuilder<TEntity,TDependentEntity> Класс

Определение

Предоставляет простой API для настройки владения "один к одному".

public class CollectionOwnershipBuilder<TEntity,TDependentEntity> : Microsoft.EntityFrameworkCore.Metadata.Builders.CollectionOwnershipBuilder where TEntity : class where TDependentEntity : class
type CollectionOwnershipBuilder<'Entity, 'DependentEntity (requires 'Entity : null and 'DependentEntity : null)> = class
    inherit CollectionOwnershipBuilder
Public Class CollectionOwnershipBuilder(Of TEntity, TDependentEntity)
Inherits CollectionOwnershipBuilder

Параметры типа

TEntity
TDependentEntity
Наследование
CollectionOwnershipBuilder<TEntity,TDependentEntity>

Конструкторы

CollectionOwnershipBuilder<TEntity,TDependentEntity>(EntityType, EntityType, InternalRelationshipBuilder)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

CollectionOwnershipBuilder<TEntity,TDependentEntity>(InternalRelationshipBuilder, CollectionOwnershipBuilder<TEntity,TDependentEntity>, Boolean, Boolean, Boolean)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

Свойства

Builder

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

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

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

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

Внешний ключ, представляющий эту связь.

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

Настраиваемый тип принадлежащей сущности.

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

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

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

Методы

FindRelatedEntityType(String, String)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

(Унаследовано от CollectionOwnershipBuilder)
FindRelatedEntityType(Type, String)

Этот API поддерживает инфраструктуру Entity Framework Core и не предназначен для использования непосредственно из кода. В будущих выпусках этот API может быть изменен или удален.

(Унаследовано от CollectionOwnershipBuilder)
HasChangeTrackingStrategy(ChangeTrackingStrategy)

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

HasData(Object[])

Настраивает эту сущность для получения начальных данных. Он используется для создания переноса движения данных.

HasData(TDependentEntity[])

Настраивает эту сущность для получения начальных данных. Он используется для создания переноса движения данных.

HasEntityTypeAnnotation(String, Object)

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

HasForeignKey(Expression<Func<TDependentEntity,Object>>)

Настраивает свойства для использования в качестве внешнего ключа для этой связи.

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

Если HasPrincipalKey(Expression<Func<TEntity,Object>>) параметр не указан, будет предпринята попытка сопоставить тип данных и порядок свойств внешнего ключа с первичным ключом типа сущности субъекта. Если они не совпадают, новые свойства теневого состояния, образующие уникальный индекс, будут добавлены к типу сущности субъекта для использования в качестве ссылочного ключа.

HasForeignKey(String[])

Настраивает свойства для использования в качестве внешнего ключа для этой связи.

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

Если HasPrincipalKey(String[]) параметр не указан, будет предпринята попытка сопоставить тип данных и порядок свойств внешнего ключа с первичным ключом типа сущности субъекта. Если они не совпадают, новые свойства теневого состояния, образующие уникальный индекс, будут добавлены к типу сущности субъекта для использования в качестве ссылочного ключа.

HasForeignKeyAnnotation(String, Object)

Добавляет или обновляет заметку к внешнему ключу. Если заметка с ключом, указанным в , annotation уже существует, ее значение будет обновлено.

HasIndex(Expression<Func<TDependentEntity,Object>>)

Настраивает индекс для указанных свойств. Если в заданном наборе свойств имеется индекс, для настройки будет возвращен существующий индекс.

HasIndex(String[])

Настраивает индекс для указанных свойств. Если в заданном наборе свойств имеется индекс, для настройки будет возвращен существующий индекс.

(Унаследовано от CollectionOwnershipBuilder)
HasKey(Expression<Func<TDependentEntity,Object>>)

Задает свойства, составляющие первичный ключ для данного типа сущности.

HasKey(String[])

Задает свойства, составляющие первичный ключ для данного типа сущности.

(Унаследовано от CollectionOwnershipBuilder)
HasOne(String, String)

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

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

После вызова этого метода необходимо связать вызов или WithMany(String)WithOne(String) , чтобы полностью настроить связь. Вызов только этого метода без вызова цепочки не приведет к получению допустимой связи.

(Унаследовано от CollectionOwnershipBuilder)
HasOne(Type, String)

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

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

После вызова этого метода необходимо связать вызов или WithMany(String)WithOne(String) , чтобы полностью настроить связь. Вызов только этого метода без вызова цепочки не приведет к получению допустимой связи.

(Унаследовано от CollectionOwnershipBuilder)
HasOne<TNewRelatedEntity>(Expression<Func<TDependentEntity,TNewRelatedEntity>>)

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

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

После вызова этого метода необходимо связать вызов или WithMany(Expression<Func<TRelatedEntity,IEnumerable<TEntity>>>)WithOne(Expression<Func<TRelatedEntity,TEntity>>) , чтобы полностью настроить связь. Вызов только этого метода без вызова цепочки не приведет к получению допустимой связи.

HasOne<TNewRelatedEntity>(String)

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

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

После вызова этого метода необходимо связать вызов или WithMany(String)WithOne(String) , чтобы полностью настроить связь. Вызов только этого метода без вызова цепочки не приведет к получению допустимой связи.

HasPrincipalKey(Expression<Func<TEntity,Object>>)

Настраивает уникальные свойства, предназначенные для этой связи. Обычно этот метод вызывается только в том случае, если в качестве основных свойств требуется использовать свойства, отличные от первичного ключа. Если указанные свойства еще не являются уникальным ограничением (или первичным ключом), будет введено новое ограничение уникальности.

HasPrincipalKey(String[])

Настраивает уникальные свойства, предназначенные для этой связи. Обычно этот метод вызывается только в том случае, если в качестве основных свойств требуется использовать свойства, отличные от первичного ключа. Если указанные свойства еще не являются уникальным ограничением (или первичным ключом), будет введено новое ограничение уникальности.

Ignore(Expression<Func<TDependentEntity,Object>>)

Исключает заданное свойство из типа сущности. Этот метод обычно используется для удаления свойств из типа принадлежащих сущностей, добавленных в соответствии с соглашением.

Ignore(String)

Исключает заданное свойство из типа сущности. Этот метод обычно используется для удаления свойств из типа принадлежащих сущностей, добавленных в соответствии с соглашением.

OnDelete(DeleteBehavior)

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

OwnsMany(String, String)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsMany(String, String, Action<CollectionOwnershipBuilder>)

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsMany(Type, String)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsMany(Type, String, Action<CollectionOwnershipBuilder>)

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsMany<TNewDependentEntity>(Expression<Func<TDependentEntity,IEnumerable<TNewDependentEntity>>>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

OwnsMany<TNewDependentEntity>(Expression<Func<TDependentEntity, IEnumerable<TNewDependentEntity>>>, Action<CollectionOwnershipBuilder<TDependentEntity, TNewDependentEntity>>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

OwnsMany<TNewDependentEntity>(String)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

OwnsMany<TNewDependentEntity>(String, Action<CollectionOwnershipBuilder<TDependentEntity,TNewDependentEntity>>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

OwnsOne(String, String)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsOne(String, String, Action<ReferenceOwnershipBuilder>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsOne(Type, String)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsOne(Type, String, Action<ReferenceOwnershipBuilder>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

(Унаследовано от CollectionOwnershipBuilder)
OwnsOne<TNewRelatedEntity>(String)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

OwnsOne<TRelatedEntity>(Expression<Func<TDependentEntity,TRelatedEntity>>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

OwnsOne<TRelatedEntity>(Expression<Func<TDependentEntity,TRelatedEntity>>, Action<ReferenceOwnershipBuilder<TDependentEntity,TRelatedEntity>>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

OwnsOne<TRelatedEntity>(String, Action<ReferenceOwnershipBuilder<TDependentEntity,TRelatedEntity>>)

Настраивает связь, в которой целевая сущность принадлежит (или является частью) этой сущности. Значение ключа целевой сущности всегда распространяется из сущности, к которой оно принадлежит.

Целевой тип сущности для каждого отношения владения рассматривается как другой тип сущности, даже если навигация имеет один и тот же тип. Конфигурация целевого типа сущности не применяется к типу целевой сущности других отношений владения.

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

Property(String)

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

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

(Унаследовано от CollectionOwnershipBuilder)
Property(Type, String)

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

Если при добавлении нового свойства в классе сущностей существует свойство с таким же именем, оно будет добавлено в модель. Если в классе сущностей нет свойства, будет добавлено новое свойство теневого состояния. Свойство теневого состояния — это свойство, которое не имеет соответствующего свойства в классе сущностей. Текущее значение свойства хранится в ChangeTracker , а не в экземплярах класса сущностей.

(Унаследовано от CollectionOwnershipBuilder)
Property<TProperty>(Expression<Func<TDependentEntity,TProperty>>)

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

При добавлении нового свойства, если свойство с таким же именем существует в классе сущностей, оно будет добавлено в модель. Если свойство не существует в классе сущности, будет добавлено новое свойство теневого состояния. Свойство теневого состояния — это свойство, которое не имеет соответствующего свойства в классе сущностей. Текущее значение свойства хранится в , ChangeTracker а не в экземплярах класса сущностей.

Property<TProperty>(String)

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

Если при добавлении нового свойства в классе сущностей существует свойство с таким же именем, оно будет добавлено в модель. Если в классе сущностей нет свойства, будет добавлено новое свойство теневого состояния. Свойство теневого состояния — это свойство, которое не имеет соответствующего свойства в классе сущностей. Текущее значение свойства хранится в ChangeTracker , а не в экземплярах класса сущностей.

(Унаследовано от CollectionOwnershipBuilder)
UsePropertyAccessMode(PropertyAccessMode)

Задает для PropertyAccessMode использования для всех свойств этого типа сущности.

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

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

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

IInfrastructure<IMutableModel>.Instance

Модель, к которой относится эта связь.

(Унаследовано от ReferenceCollectionBuilderBase)
IInfrastructure<InternalEntityTypeBuilder>.Instance

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

(Унаследовано от CollectionOwnershipBuilder)
IInfrastructure<InternalRelationshipBuilder>.Instance

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

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

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

GetInfrastructure<T>(IInfrastructure<T>)

Получает значение из свойства, скрытого с помощью IInfrastructure<T>.

Этот метод обычно используется поставщиками баз данных (и другими расширениями). Обычно он не используется в коде приложения.

HasConstraintName(CollectionOwnershipBuilder, String)

Настраивает имя ограничения внешнего ключа для этой связи при нацеливание на реляционную базу данных.

HasConstraintName<TEntity,TDependentEntity>(CollectionOwnershipBuilder<TEntity,TDependentEntity>, String)

Настраивает имя ограничения внешнего ключа для этой связи при нацеливание на реляционную базу данных.

ToTable(CollectionOwnershipBuilder, String)

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

ToTable(CollectionOwnershipBuilder, String, String)

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

ToTable<TEntity,TDependentEntity>(CollectionOwnershipBuilder<TEntity,TDependentEntity>, String)

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

ToTable<TEntity,TDependentEntity>(CollectionOwnershipBuilder<TEntity,TDependentEntity>, String, String)

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

ForSqlServerIsMemoryOptimized(CollectionOwnershipBuilder, Boolean)

Настраивает таблицу, с которым сопоставляется сущность при нацеливание на SQL Server как оптимизированную для памяти.

ForSqlServerIsMemoryOptimized<TEntity,TRelatedEntity>(CollectionOwnershipBuilder<TEntity,TRelatedEntity>, Boolean)

Настраивает таблицу, с которым сопоставляется сущность при нацеливание на SQL Server как оптимизированную для памяти.

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