ReferenceReferenceBuilder<TEntity,TRelatedEntity>.HasForeignKey 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
| 名称 | 说明 |
|---|---|
| HasForeignKey(String, String[]) |
将属性配置为用作此关系的外键。 |
| HasForeignKey(Type, String[]) |
将属性配置为用作此关系的外键。 |
| HasForeignKey<TDependentEntity>(String[]) |
将属性配置为用作此关系的外键。 |
| HasForeignKey<TDependentEntity>(Expression<Func<TDependentEntity,Object>>) |
将属性配置为用作此关系的外键。 |
HasForeignKey(String, String[])
将属性配置为用作此关系的外键。
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasForeignKey(string dependentEntityTypeName, params string[] foreignKeyPropertyNames);
override this.HasForeignKey : string * string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)>
Public Overridable Function HasForeignKey (dependentEntityTypeName As String, ParamArray foreignKeyPropertyNames As String()) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
参数
- dependentEntityTypeName
- String
此关系中依赖的实体类型的名称(具有外键属性的类型)。
- foreignKeyPropertyNames
- String[]
外键属性的名称(s)。
返回
同一个生成器实例,以便可以链接多个配置调用。
注解
如果实体类型上不存在指定的属性名称,则将添加一个新的阴影状态属性(s),用作外键。 阴影状态属性是实体类中没有相应属性的属性。 该属性的当前值存储在实体类的实例中 ChangeTracker ,而不是存储在实体类的实例中。
如果未 HasPrincipalKey(String, String[]) 指定,则将尝试将外键属性的数据类型和顺序与主体实体类型的主键匹配。 如果它们不匹配,构成唯一索引的新阴影状态属性将添加到主体实体类型,用作引用键。
适用于
HasForeignKey(Type, String[])
将属性配置为用作此关系的外键。
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasForeignKey(Type dependentEntityType, params string[] foreignKeyPropertyNames);
override this.HasForeignKey : Type * string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)>
Public Overridable Function HasForeignKey (dependentEntityType As Type, ParamArray foreignKeyPropertyNames As String()) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
参数
- dependentEntityType
- Type
此关系中依赖的实体类型(具有外键属性的类型)。
- foreignKeyPropertyNames
- String[]
外键属性的名称(s)。
返回
同一个生成器实例,以便可以链接多个配置调用。
注解
如果实体类型上不存在指定的属性名称,则将添加一个新的阴影状态属性(s),用作外键。 阴影状态属性是实体类中没有相应属性的属性。 该属性的当前值存储在实体类的实例中 ChangeTracker ,而不是存储在实体类的实例中。
如果未 HasPrincipalKey(Type, String[]) 指定,则将尝试将外键属性的数据类型和顺序与主体实体类型的主键匹配。 如果它们不匹配,构成唯一索引的新阴影状态属性将添加到主体实体类型,用作引用键。
适用于
HasForeignKey<TDependentEntity>(String[])
将属性配置为用作此关系的外键。
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasForeignKey<TDependentEntity>(params string[] foreignKeyPropertyNames) where TDependentEntity : class;
override this.HasForeignKey : string[] -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> (requires 'DependentEntity : null)
Public Overridable Function HasForeignKey(Of TDependentEntity As Class) (ParamArray foreignKeyPropertyNames As String()) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
类型参数
- TDependentEntity
此关系中依赖的实体类型(具有外键属性的类型)。
参数
- foreignKeyPropertyNames
- String[]
外键属性的名称(s)。
返回
同一个生成器实例,以便可以链接多个配置调用。
注解
如果实体类型上不存在指定的属性名称,则将添加一个新的阴影状态属性(s),用作外键。 阴影状态属性是实体类中没有相应属性的属性。 该属性的当前值存储在实体类的实例中 ChangeTracker ,而不是存储在实体类的实例中。
如果未 HasPrincipalKey<TPrincipalEntity>(String[]) 指定,则将尝试将外键属性的数据类型和顺序与主体实体类型的主键匹配。 如果它们不匹配,构成唯一索引的新阴影状态属性将添加到主体实体类型中,用作引用的键。
适用于
HasForeignKey<TDependentEntity>(Expression<Func<TDependentEntity,Object>>)
将属性配置为用作此关系的外键。
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasForeignKey<TDependentEntity>(System.Linq.Expressions.Expression<Func<TDependentEntity,object>> foreignKeyExpression);
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasForeignKey<TDependentEntity>(System.Linq.Expressions.Expression<Func<TDependentEntity,object>> foreignKeyExpression) where TDependentEntity : class;
public virtual Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<TEntity,TRelatedEntity> HasForeignKey<TDependentEntity>(System.Linq.Expressions.Expression<Func<TDependentEntity,object?>> foreignKeyExpression) where TDependentEntity : class;
override this.HasForeignKey : System.Linq.Expressions.Expression<Func<'DependentEntity, obj>> -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)>
override this.HasForeignKey : System.Linq.Expressions.Expression<Func<'DependentEntity, obj>> -> Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> (requires 'DependentEntity : null)
Public Overridable Function HasForeignKey(Of TDependentEntity) (foreignKeyExpression As Expression(Of Func(Of TDependentEntity, Object))) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
Public Overridable Function HasForeignKey(Of TDependentEntity As Class) (foreignKeyExpression As Expression(Of Func(Of TDependentEntity, Object))) As ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
类型参数
- TDependentEntity
此关系中依赖的实体类型。 也就是说,具有外键属性的类型。
参数
- foreignKeyExpression
- Expression<Func<TDependentEntity,Object>>
一个 lambda 表达式,表示外键属性(s) (t => t.Id1)。
如果外键由多个属性组成,则指定包括属性(t => new { t.Id1, t.Id2 }) 的匿名类型。 指定的顺序应与相应键的顺序 HasPrincipalKey<TPrincipalEntity>(Expression<Func<TPrincipalEntity,Object>>)匹配。
返回
同一个生成器实例,以便可以链接多个配置调用。
注解
如果实体类型上不存在指定的属性名称,则将添加一个新的阴影状态属性(s),用作外键。 阴影状态属性是实体类中没有相应属性的属性。 该属性的当前值存储在实体类的实例中 ChangeTracker ,而不是存储在实体类的实例中。
如果未 HasPrincipalKey<TPrincipalEntity>(Expression<Func<TPrincipalEntity,Object>>) 指定,则将尝试将外键属性的数据类型和顺序与主体实体类型的主键匹配。 如果它们不匹配,构成唯一索引的新阴影状态属性将添加到主体实体类型,用作引用键。