Udostępnij za pośrednictwem


ReferenceOwnershipBuilder<TEntity,TRelatedEntity>.HasForeignKey Metoda

Definicja

Przeciążenia

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

Konfiguruje właściwości do użycia jako klucz obcy dla tej relacji.

Jeśli określone nazwy właściwości nie istnieją w typie jednostki, zostaną dodane nowe właściwości stanu w tle, które będą pełnić rolę klucza obcego. Właściwość stanu w tle jest taka, która nie ma odpowiedniej właściwości w klasie jednostki. Bieżąca wartość właściwości jest przechowywana w ChangeTracker obiekcie , a nie jest przechowywana w wystąpieniach klasy jednostki.

Jeśli HasPrincipalKey(Expression<Func<TEntity,Object>>) nie zostanie określony, zostanie podjęta próba dopasowania typu danych i kolejności właściwości klucza obcego do klucza podstawowego typu jednostki głównej. Jeśli nie są one zgodne, nowe właściwości stanu w tle, które tworzą unikatowy indeks, zostaną dodane do typu jednostki głównej, aby służyć jako klucz odwołania.

HasForeignKey(String[])

Konfiguruje właściwości do użycia jako klucz obcy dla tej relacji.

Jeśli określone nazwy właściwości nie istnieją w typie jednostki, zostaną dodane nowe właściwości stanu w tle, które będą pełnić rolę klucza obcego. Właściwość stanu w tle jest taka, która nie ma odpowiedniej właściwości w klasie jednostki. Bieżąca wartość właściwości jest przechowywana w ChangeTracker obiekcie , a nie jest przechowywana w wystąpieniach klasy jednostki.

Jeśli HasPrincipalKey(String[]) nie zostanie określony, zostanie podjęta próba dopasowania typu danych i kolejności właściwości klucza obcego do klucza podstawowego typu jednostki głównej. Jeśli nie są one zgodne, nowe właściwości stanu w tle, które tworzą unikatowy indeks, zostaną dodane do typu jednostki głównej, aby służyć jako klucz odwołania.

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

Konfiguruje właściwości do użycia jako klucz obcy dla tej relacji.

Jeśli określone nazwy właściwości nie istnieją w typie jednostki, zostaną dodane nowe właściwości stanu w tle, które będą pełnić rolę klucza obcego. Właściwość stanu w tle jest taka, która nie ma odpowiedniej właściwości w klasie jednostki. Bieżąca wartość właściwości jest przechowywana w ChangeTracker obiekcie , a nie jest przechowywana w wystąpieniach klasy jednostki.

Jeśli HasPrincipalKey(Expression<Func<TEntity,Object>>) nie zostanie określony, zostanie podjęta próba dopasowania typu danych i kolejności właściwości klucza obcego do klucza podstawowego typu jednostki głównej. Jeśli nie są one zgodne, nowe właściwości stanu w tle, które tworzą unikatowy indeks, zostaną dodane do typu jednostki głównej, aby służyć jako klucz odwołania.

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

Parametry

foreignKeyExpression
Expression<Func<TRelatedEntity,Object>>

Wyrażenie lambda reprezentujące właściwości klucza obcego (t => t.Id1).

Jeśli klucz obcy składa się z wielu właściwości, określ typ anonimowy, w tym właściwości (t => new { t.Id1, t.Id2 }). Określona kolejność powinna być zgodna z kolejnością odpowiednich właściwości w pliku HasPrincipalKey(Expression<Func<TEntity,Object>>).

Zwraca

To samo wystąpienie konstruktora, aby można było połączyć wiele wywołań konfiguracji.

Dotyczy

HasForeignKey(String[])

Konfiguruje właściwości do użycia jako klucz obcy dla tej relacji.

Jeśli określone nazwy właściwości nie istnieją w typie jednostki, zostaną dodane nowe właściwości stanu w tle, które będą pełnić rolę klucza obcego. Właściwość stanu w tle jest taka, która nie ma odpowiedniej właściwości w klasie jednostki. Bieżąca wartość właściwości jest przechowywana w ChangeTracker obiekcie , a nie jest przechowywana w wystąpieniach klasy jednostki.

Jeśli HasPrincipalKey(String[]) nie zostanie określony, zostanie podjęta próba dopasowania typu danych i kolejności właściwości klucza obcego do klucza podstawowego typu jednostki głównej. Jeśli nie są one zgodne, nowe właściwości stanu w tle, które tworzą unikatowy indeks, zostaną dodane do typu jednostki głównej, aby służyć jako klucz odwołania.

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

Parametry

foreignKeyPropertyNames
String[]

Nazwy właściwości klucza obcego.

Zwraca

To samo wystąpienie konstruktora, aby można było połączyć wiele wywołań konfiguracji.

Dotyczy