语言

ReferenceReferenceBuilder<TEntity,TRelatedEntity> 类

定义

提供用于配置一对一关系的简单 API。

public class ReferenceReferenceBuilder<TEntity,TRelatedEntity> : Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder where TEntity : class where TRelatedEntity : class
[System.Runtime.CompilerServices.Nullable(0)]
public class ReferenceReferenceBuilder<TEntity,TRelatedEntity> : Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceReferenceBuilder where TEntity : class where TRelatedEntity : class
type ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> = class
    inherit ReferenceReferenceBuilder
[<System.Runtime.CompilerServices.Nullable(0)>]
type ReferenceReferenceBuilder<'Entity, 'RelatedEntity (requires 'Entity : null and 'RelatedEntity : null)> = class
    inherit ReferenceReferenceBuilder
Public Class ReferenceReferenceBuilder(Of TEntity, TRelatedEntity)
Inherits ReferenceReferenceBuilder

类型参数

TEntity
TRelatedEntity
继承
ReferenceReferenceBuilder<TEntity,TRelatedEntity>
继承
ReferenceReferenceBuilder<TEntity,TRelatedEntity>
继承
ReferenceReferenceBuilder<TEntity,TRelatedEntity>
特性

注解

有关详细信息和示例,请参阅 建模实体类型和关系 。

构造函数

名称 说明
ReferenceReferenceBuilder<TEntity,TRelatedEntity>(EntityType, EntityType, InternalRelationshipBuilder)

此 API 支持Entity Framework Core基础结构,不打算直接从代码使用。 此 API 可能会在将来的版本中更改或删除。

ReferenceReferenceBuilder<TEntity,TRelatedEntity>(IMutableEntityType, IMutableEntityType, IMutableForeignKey)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

ReferenceReferenceBuilder<TEntity,TRelatedEntity>(InternalForeignKeyBuilder, ReferenceReferenceBuilder, Boolean, Boolean, Boolean, Boolean)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

ReferenceReferenceBuilder<TEntity,TRelatedEntity>(InternalRelationshipBuilder, EntityType, EntityType)

此 API 支持Entity Framework Core基础结构,不打算直接从代码使用。 此 API 可能会在将来的版本中更改或删除。

ReferenceReferenceBuilder<TEntity,TRelatedEntity>(InternalRelationshipBuilder, ReferenceReferenceBuilder, Boolean, Boolean, Boolean, Boolean)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

属性

名称 说明
Builder

获取用于配置此关系的内部生成器。

(继承自 ReferenceReferenceBuilder)
DeclaringEntityType

获取用于配置此关系的第一个实体类型。

(继承自 InvertibleRelationshipBuilderBase)
DeclaringEntityType

获取用于配置此关系的第一个实体类型。

(继承自 ReferenceReferenceBuilderBase)
Metadata

表示此关系的外键。

(继承自 ReferenceReferenceBuilder)
RelatedEntityType

获取用于配置此关系的第二个实体类型。

(继承自 InvertibleRelationshipBuilderBase)
RelatedEntityType

获取用于配置此关系的第二个实体类型。

(继承自 ReferenceReferenceBuilderBase)

方法

名称 说明
HasAnnotation(String, Object)

添加或更新关系上的批注。 如果具有指定键的 annotation 批注已存在,则会更新其值。

HasForeignKey(String, String[])

将属性配置为用作此关系的外键。

HasForeignKey(Type, String[])

将属性配置为用作此关系的外键。

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

将属性配置为用作此关系的外键。

HasForeignKey<TDependentEntity>(String[])

将属性配置为用作此关系的外键。

HasForeignKeyBuilder(EntityType, String, IReadOnlyList<MemberInfo>)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

(继承自 ReferenceReferenceBuilder)
HasForeignKeyBuilder(EntityType, String, IReadOnlyList<PropertyInfo>)

此 API 支持Entity Framework Core基础结构,不打算直接从代码使用。 此 API 可能会在将来的版本中更改或删除。

(继承自 ReferenceReferenceBuilder)
HasForeignKeyBuilder(EntityType, String, IReadOnlyList<String>)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

(继承自 ReferenceReferenceBuilder)
HasPrincipalKey(String, String[])

配置此关系所面向的唯一属性。 通常,如果想要将主键以外的属性用作主体属性(s),则仅调用此方法。 如果指定的属性(s)不是唯一约束(或主键),则将引入新的唯一约束。

HasPrincipalKey(Type, String[])

配置此关系所面向的唯一属性。 通常,如果想要将主键以外的属性用作主体属性(s),则仅调用此方法。 如果指定的属性(s)不是唯一约束(或主键),则将引入新的唯一约束。

HasPrincipalKey<TPrincipalEntity>(Expression<Func<TPrincipalEntity,Object>>)

配置此关系所面向的唯一属性。 通常,如果想要将主键以外的属性用作主体属性(s),则仅调用此方法。 如果指定的属性(s)不是唯一约束(或主键),则将引入新的唯一约束。

HasPrincipalKey<TPrincipalEntity>(String[])

配置此关系所面向的唯一属性。 通常,如果想要将主键以外的属性用作主体属性(s),则仅调用此方法。 如果指定的属性(s)不是唯一约束(或主键),则将引入新的唯一约束。

HasPrincipalKeyBuilder(EntityType, String, IReadOnlyList<MemberInfo>)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

(继承自 ReferenceReferenceBuilder)
HasPrincipalKeyBuilder(EntityType, String, IReadOnlyList<PropertyInfo>)

此 API 支持Entity Framework Core基础结构,不打算直接从代码使用。 此 API 可能会在将来的版本中更改或删除。

(继承自 ReferenceReferenceBuilder)
HasPrincipalKeyBuilder(EntityType, String, IReadOnlyList<String>)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

(继承自 ReferenceReferenceBuilder)
IsConstrained(Boolean)

配置关系是否受约束。 创建数据库外键约束时 false,查询将关系视为可选(主体不假定存在),即使外键属性不可为 null 也是如此。 这不会影响更改跟踪。 请参阅 IsConstrained。

IsRequired(Boolean)

配置这是否为必需关系(即是否可以分配 null外键属性)。

OnDelete(DeleteBehavior)

配置在删除主体或断开关系时应用于关系中的从属实体的操作。

OnDelete(DeleteBehavior)

配置删除主体或断开关系时,如何对关系中的依赖实体应用删除操作。

ResolveEntityType(String)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

(继承自 ReferenceReferenceBuilder)
ResolveEntityType(Type)

这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。

(继承自 ReferenceReferenceBuilder)
SetDependentEntityType(String)

设置关系所依赖的实体类型。

(继承自 ReferenceReferenceBuilder)
SetDependentEntityType(Type)

设置关系所依赖的实体类型。

(继承自 ReferenceReferenceBuilder)
SetPrincipalEntityType(String)

设置作为关系主体的实体类型。

(继承自 ReferenceReferenceBuilder)
SetPrincipalEntityType(Type)

设置作为关系主体的实体类型。

(继承自 ReferenceReferenceBuilder)

显式接口实现

名称 说明
IInfrastructure<IConventionForeignKeyBuilder>.Instance

获取隐藏的属性的值。

(继承自 InvertibleRelationshipBuilderBase)
IInfrastructure<IMutableModel>.Instance

此关系所属的模型。

(继承自 ReferenceReferenceBuilder)
IInfrastructure<InternalRelationshipBuilder>.Instance

获取用于配置此关系的内部生成器。

(继承自 ReferenceReferenceBuilder)

扩展方法

名称 说明
ExcludeForeignKeyFromMigrations(ReferenceReferenceBuilder, Boolean)

配置在面向关系数据库时是否从迁移中排除外键约束。

ExcludeForeignKeyFromMigrations<TEntity,TRelatedEntity>(ReferenceReferenceBuilder<TEntity,TRelatedEntity>, Boolean)

配置在面向关系数据库时是否从迁移中排除外键约束。

ForSqliteHasConstraintName(ReferenceReferenceBuilder, String)

针对 SQLite 配置此关系的外键约束名称。

ForSqliteHasConstraintName<TEntity,TReferencedEntity>(ReferenceReferenceBuilder<TEntity,TReferencedEntity>, String)

针对 SQLite 配置此关系的外键约束名称。

ForSqlServerHasConstraintName(ReferenceReferenceBuilder, String)

针对SQL Server时配置此关系的外键约束名称。

ForSqlServerHasConstraintName<TEntity,TRelatedEntity>(ReferenceReferenceBuilder<TEntity,TRelatedEntity>, String)

针对SQL Server时配置此关系的外键约束名称。

GetInfrastructure<T>(IInfrastructure<T>)

从正在使用的隐藏 IInfrastructure<T>属性中获取值。

此方法通常由数据库提供程序(和其他扩展)使用。 它通常不用于应用程序代码。

HasConstraintName(ReferenceReferenceBuilder, String)

针对关系数据库时配置此关系的外键约束名称。

HasConstraintName(ReferenceReferenceBuilder, String)

针对关系数据库时配置此关系的外键约束名称。

HasConstraintName<TEntity,TRelatedEntity>(ReferenceReferenceBuilder<TEntity,TRelatedEntity>, String)

针对关系数据库时配置此关系的外键约束名称。

HasConstraintName<TEntity,TRelatedEntity>(ReferenceReferenceBuilder<TEntity,TRelatedEntity>, String)

针对关系数据库时配置此关系的外键约束名称。

适用于