Share via


EntityTypeBuilder<TEntity>.HasOne 方法

定義

多載

HasOne<TRelatedEntity>(String)

設定關聯性,其中此實體類型具有指向關聯性中其他類型之單一實例的參考。

HasOne<TRelatedEntity>(Expression<Func<TEntity,TRelatedEntity>>)

設定關聯性,其中此實體類型具有指向關聯性中其他類型之單一實例的參考。

HasOne<TRelatedEntity>(String)

設定關聯性,其中此實體類型具有指向關聯性中其他類型之單一實例的參考。

public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceNavigationBuilder<TEntity,TRelatedEntity> HasOne<TRelatedEntity> (string navigationName) where TRelatedEntity : class;
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceNavigationBuilder<TEntity,TRelatedEntity> HasOne<TRelatedEntity> (string? navigationName) where TRelatedEntity : class;
override this.HasOne : string -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceNavigationBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> (requires 'RelatedEntity : null)
Public Overridable Function HasOne(Of TRelatedEntity As Class) (navigationName As String) As ReferenceNavigationBuilder(Of TEntity, TRelatedEntity)

類型參數

TRelatedEntity

這個關聯性的目標實體類型。

參數

navigationName
String

此實體類型上代表關聯性的參考導覽屬性名稱。 如果未指定任何屬性,則會在此端設定沒有導覽屬性的關聯性。

傳回

可用來設定關聯性的 物件。

備註

請注意,呼叫沒有參數的這個方法會明確地將關聯性的這個端設定為不使用導覽屬性,即使實體類型上有這類屬性也一樣。 如果要使用導覽屬性,則必須指定它。

呼叫這個方法之後,您應該鏈結對 WithMany(String)WithOne(String) 的呼叫,以完整設定關聯性。 只要呼叫這個沒有鏈結呼叫的方法,就不會產生有效的關聯性。

適用於

HasOne<TRelatedEntity>(Expression<Func<TEntity,TRelatedEntity>>)

設定關聯性,其中此實體類型具有指向關聯性中其他類型之單一實例的參考。

public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceNavigationBuilder<TEntity,TRelatedEntity> HasOne<TRelatedEntity> (System.Linq.Expressions.Expression<Func<TEntity,TRelatedEntity>> navigationExpression = default) where TRelatedEntity : class;
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceNavigationBuilder<TEntity,TRelatedEntity> HasOne<TRelatedEntity> (System.Linq.Expressions.Expression<Func<TEntity,TRelatedEntity?>>? navigationExpression = default) where TRelatedEntity : class;
override this.HasOne : System.Linq.Expressions.Expression<Func<'Entity, 'RelatedEntity>> -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceNavigationBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> (requires 'RelatedEntity : null)
Public Overridable Function HasOne(Of TRelatedEntity As Class) (Optional navigationExpression As Expression(Of Func(Of TEntity, TRelatedEntity)) = Nothing) As ReferenceNavigationBuilder(Of TEntity, TRelatedEntity)

類型參數

TRelatedEntity

這個關聯性的目標實體類型。

參數

navigationExpression
Expression<Func<TEntity,TRelatedEntity>>

Lambda 運算式,表示這個實體類型上的參考導覽屬性,表示關聯性 (post => post.Blog) 。 如果未指定任何屬性,則會在此端設定沒有導覽屬性的關聯性。

傳回

可用來設定關聯性的 物件。

備註

請注意,呼叫沒有參數的這個方法會明確地將關聯性的這個端設定為不使用導覽屬性,即使實體類型上有這類屬性也一樣。 如果要使用導覽屬性,則必須指定它。

呼叫這個方法之後,您應該鏈結對 WithMany(Expression<Func<TRelatedEntity,IEnumerable<TEntity>>>)WithOne(Expression<Func<TRelatedEntity,TEntity>>) 的呼叫,以完整設定關聯性。 只要呼叫這個沒有鏈結呼叫的方法,就不會產生有效的關聯性。

適用於