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


OwnershipBuilder<TEntity,TDependentEntity>.HasForeignKey Метод

Определение

Перегрузки

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

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

HasForeignKey(String[])

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

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

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

public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.OwnershipBuilder<TEntity,TDependentEntity> HasForeignKey (System.Linq.Expressions.Expression<Func<TDependentEntity,object>> foreignKeyExpression);
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.OwnershipBuilder<TEntity,TDependentEntity> HasForeignKey (System.Linq.Expressions.Expression<Func<TDependentEntity,object?>> foreignKeyExpression);
override this.HasForeignKey : System.Linq.Expressions.Expression<Func<'DependentEntity, obj>> -> Microsoft.EntityFrameworkCore.Metadata.Builders.OwnershipBuilder<'Entity, 'DependentEntity (requires 'Entity : null and 'DependentEntity : null)>
Public Overridable Function HasForeignKey (foreignKeyExpression As Expression(Of Func(Of TDependentEntity, Object))) As OwnershipBuilder(Of TEntity, TDependentEntity)

Параметры

foreignKeyExpression
Expression<Func<TDependentEntity,Object>>

Лямбда-выражение, представляющее свойства внешнего ключа (t => t.Id1).

Если внешний ключ состоит из нескольких свойств, укажите анонимный тип, включая свойства (t => new { t.Id1, t.Id2 }). Указанный порядок должен соответствовать порядку соответствующих свойств в HasPrincipalKey(Expression<Func<TEntity,Object>>).

Возвращаемое значение

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

Комментарии

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

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

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

HasForeignKey(String[])

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

public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.OwnershipBuilder<TEntity,TDependentEntity> HasForeignKey (params string[] foreignKeyPropertyNames);
override this.HasForeignKey : string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.OwnershipBuilder<'Entity, 'DependentEntity (requires 'Entity : null and 'DependentEntity : null)>
Public Overridable Function HasForeignKey (ParamArray foreignKeyPropertyNames As String()) As OwnershipBuilder(Of TEntity, TDependentEntity)

Параметры

foreignKeyPropertyNames
String[]

Имена свойств внешнего ключа.

Возвращаемое значение

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

Комментарии

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

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

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