次の方法で共有


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[]) 、外部キー プロパティのデータ型と順序をプリンシパル エンティティ型の主キーと照合しようとします。 一致しない場合は、一意のインデックスを形成する新しいシャドウ状態プロパティがプリンシパル エンティティ型に追加され、参照キーとして機能します。

適用対象