Freigeben über


OwnershipBuilder<TEntity,TDependentEntity>.HasForeignKey Methode

Definition

Überlädt

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

Konfiguriert die Eigenschaft(en), die als Fremdschlüssel für diese Beziehung verwendet werden sollen.

HasForeignKey(String[])

Konfiguriert die Eigenschaft(en), die als Fremdschlüssel für diese Beziehung verwendet werden sollen.

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

Konfiguriert die Eigenschaft(en), die als Fremdschlüssel für diese Beziehung verwendet werden sollen.

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)

Parameter

foreignKeyExpression
Expression<Func<TDependentEntity,Object>>

Ein Lambdaausdruck, der die Fremdschlüsseleigenschaft(en) (t => t.Id1) darstellt.

Wenn der Fremdschlüssel aus mehreren Eigenschaften besteht, geben Sie einen anonymen Typ einschließlich der Eigenschaften (t => new { t.Id1, t.Id2 }) an. Die angegebene Reihenfolge sollte mit der Reihenfolge der entsprechenden Eigenschaften in HasPrincipalKey(Expression<Func<TEntity,Object>>)übereinstimmen.

Gibt zurück

Derselbe Generator instance, sodass mehrere Konfigurationsaufrufe verkettet werden können.

Hinweise

Wenn die angegebenen Eigenschaftsnamen für den Entitätstyp nicht vorhanden sind, wird eine neue Schattenzustandseigenschaft(en) hinzugefügt, die als Fremdschlüssel dienen. Eine Schattenzustandseigenschaft ist eine Eigenschaft, die keine entsprechende Eigenschaft in der Entitätsklasse aufweist. Der aktuelle Wert für die -Eigenschaft wird in der ChangeTracker gespeichert und nicht in Instanzen der Entitätsklasse gespeichert.

Wenn HasPrincipalKey(Expression<Func<TEntity,Object>>) nicht angegeben wird, wird versucht, den Datentyp und die Reihenfolge der Fremdschlüsseleigenschaften mit dem Primärschlüssel des Prinzipalentitätstyps abzugleichen. Wenn sie nicht übereinstimmen, werden dem Prinzipalentitätstyp neue Schattenzustandseigenschaften hinzugefügt, die einen eindeutigen Index bilden, um als Verweisschlüssel zu dienen.

Gilt für:

HasForeignKey(String[])

Konfiguriert die Eigenschaft(en), die als Fremdschlüssel für diese Beziehung verwendet werden sollen.

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)

Parameter

foreignKeyPropertyNames
String[]

Der Name(en) der Fremdschlüsseleigenschaft(en).

Gibt zurück

Derselbe Generator instance, sodass mehrere Konfigurationsaufrufe verkettet werden können.

Hinweise

Wenn die angegebenen Eigenschaftsnamen für den Entitätstyp nicht vorhanden sind, wird eine neue Schattenzustandseigenschaft(en) hinzugefügt, die als Fremdschlüssel dienen. Eine Schattenzustandseigenschaft ist eine Eigenschaft, die keine entsprechende Eigenschaft in der Entitätsklasse aufweist. Der aktuelle Wert für die -Eigenschaft wird in der ChangeTracker gespeichert und nicht in Instanzen der Entitätsklasse gespeichert.

Wenn HasPrincipalKey(String[]) nicht angegeben wird, wird versucht, den Datentyp und die Reihenfolge der Fremdschlüsseleigenschaften mit dem Primärschlüssel des Prinzipalentitätstyps abzugleichen. Wenn sie nicht übereinstimmen, werden dem Prinzipalentitätstyp neue Schattenzustandseigenschaften hinzugefügt, die einen eindeutigen Index bilden, um als Verweisschlüssel zu dienen.

Gilt für: