语言

ReferenceCollectionBuilder 类

定义

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

public class ReferenceCollectionBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.IMutableModel>, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalRelationshipBuilder>
[System.Runtime.CompilerServices.Nullable(0)]
public class ReferenceCollectionBuilder : Microsoft.EntityFrameworkCore.Metadata.Builders.RelationshipBuilderBase
public class ReferenceCollectionBuilder : Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceCollectionBuilderBase
public class ReferenceCollectionBuilder : Microsoft.EntityFrameworkCore.Metadata.Builders.RelationshipBuilderBase
type ReferenceCollectionBuilder = class
    interface IInfrastructure<IMutableModel>
    interface IInfrastructure<InternalRelationshipBuilder>
[<System.Runtime.CompilerServices.Nullable(0)>]
type ReferenceCollectionBuilder = class
    inherit RelationshipBuilderBase
type ReferenceCollectionBuilder = class
    inherit ReferenceCollectionBuilderBase
type ReferenceCollectionBuilder = class
    inherit RelationshipBuilderBase
Public Class ReferenceCollectionBuilder
Implements IInfrastructure(Of IMutableModel), IInfrastructure(Of InternalRelationshipBuilder)
Public Class ReferenceCollectionBuilder
Inherits RelationshipBuilderBase
Public Class ReferenceCollectionBuilder
Inherits ReferenceCollectionBuilderBase
继承
ReferenceCollectionBuilder
继承
ReferenceCollectionBuilder
继承
ReferenceCollectionBuilder
派生
特性
实现
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalRelationshipBuilder>

注解

使用 ModelBuilder API 时,此类的实例会从方法返回,并且不会在应用程序代码中直接构造此类实例。

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

构造函数

名称 说明
ReferenceCollectionBuilder(EntityType, EntityType, InternalRelationshipBuilder)

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

ReferenceCollectionBuilder(IMutableEntityType, IMutableEntityType, IMutableForeignKey)

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

ReferenceCollectionBuilder(InternalForeignKeyBuilder, ReferenceCollectionBuilder, Boolean, Boolean, Boolean)

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

ReferenceCollectionBuilder(InternalRelationshipBuilder, ReferenceCollectionBuilder, Boolean, Boolean, Boolean)

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

ReferenceCollectionBuilder(InternalRelationshipBuilder)

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

属性

名称 说明
Builder

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

Builder

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

(继承自 RelationshipBuilderBase)
Builder

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

(继承自 ReferenceCollectionBuilderBase)
DependentEntityType

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

(继承自 RelationshipBuilderBase)
DependentEntityType

获取用于配置此关系的依赖实体类型。

(继承自 ReferenceCollectionBuilderBase)
Metadata

表示此关系的外键。

Metadata

表示此关系的外键。

(继承自 RelationshipBuilderBase)
Metadata

表示此关系的外键。

(继承自 ReferenceCollectionBuilderBase)
PrincipalEntityType

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

(继承自 RelationshipBuilderBase)
PrincipalEntityType

获取用于配置此关系的主体实体类型。

(继承自 ReferenceCollectionBuilderBase)

方法

名称 说明
HasAnnotation(String, Object)

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

HasForeignKey(String[])

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

HasForeignKeyBuilder(IReadOnlyList<MemberInfo>)

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

HasForeignKeyBuilder(IReadOnlyList<PropertyInfo>)

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

HasForeignKeyBuilder(IReadOnlyList<String>)

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

HasPrincipalKey(String[])

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

HasPrincipalKeyBuilder(IReadOnlyList<MemberInfo>)

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

HasPrincipalKeyBuilder(IReadOnlyList<PropertyInfo>)

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

HasPrincipalKeyBuilder(IReadOnlyList<String>)

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

IsConstrained(Boolean)

配置关系是否受到约束(由保证每个设置外键值存在匹配的主体密钥提供支持)。 创建数据库外键约束时 false,查询将关系视为可选(主体不假定存在),即使外键属性不可为 null 也是如此。 这不会影响更改跟踪。 请参阅 IsConstrained。

IsRequired(Boolean)

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

OnDelete(DeleteBehavior)

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

OnDelete(DeleteBehavior)

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

显式接口实现

名称 说明
IInfrastructure<IConventionForeignKeyBuilder>.Instance

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

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

此关系所属的模型。

IInfrastructure<IMutableModel>.Instance

此关系所属的模型。

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

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

IInfrastructure<InternalRelationshipBuilder>.Instance

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

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

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

(继承自 ReferenceCollectionBuilderBase)

扩展方法

名称 说明
ExcludeForeignKeyFromMigrations(ReferenceCollectionBuilder, Boolean)

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

ForSqliteHasConstraintName(ReferenceCollectionBuilder, String)

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

ForSqlServerHasConstraintName(ReferenceCollectionBuilder, String)

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

GetInfrastructure<T>(IInfrastructure<T>)

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

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

HasConstraintName(ReferenceCollectionBuilder, String)

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

HasConstraintName(ReferenceCollectionBuilder, String)

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

适用于