KeyBuilder 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供用于配置 . 的 IMutableKey简单 API。
public class KeyBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.IMutableModel>, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalKeyBuilder>
[System.Runtime.CompilerServices.Nullable(0)]
public class KeyBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Builders.IConventionKeyBuilder>
public class KeyBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalKeyBuilder>
public class KeyBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Builders.IConventionKeyBuilder>
type KeyBuilder = class
interface IInfrastructure<IMutableModel>
interface IInfrastructure<InternalKeyBuilder>
[<System.Runtime.CompilerServices.Nullable(0)>]
type KeyBuilder = class
interface IInfrastructure<IConventionKeyBuilder>
type KeyBuilder = class
interface IInfrastructure<InternalKeyBuilder>
type KeyBuilder = class
interface IInfrastructure<IConventionKeyBuilder>
Public Class KeyBuilder
Implements IInfrastructure(Of IMutableModel), IInfrastructure(Of InternalKeyBuilder)
Public Class KeyBuilder
Implements IInfrastructure(Of IConventionKeyBuilder)
Public Class KeyBuilder
Implements IInfrastructure(Of InternalKeyBuilder)
- 继承
-
KeyBuilder
- 派生
- 特性
- 实现
-
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalKeyBuilder> IInfrastructure<IConventionKeyBuilder>
注解
使用 ModelBuilder API 时,此类的实例会从方法返回,并且不会在应用程序代码中直接构造此类实例。
有关详细信息和示例,请参阅 建模实体类型和关系 。
构造函数
| 名称 | 说明 |
|---|---|
| KeyBuilder(IMutableKey) |
这是一个内部 API,支持Entity Framework Core基础结构,不受与公共 API 相同的兼容性标准的约束。 可以在任何版本中更改或删除它,而不通知。 只需在代码中直接使用它,并非常谨慎地知道这样做可能会导致应用程序在更新到新的Entity Framework Core版本时失败。 |
| KeyBuilder(InternalKeyBuilder) |
此 API 支持Entity Framework Core基础结构,不打算直接从代码使用。 此 API 可能会在将来的版本中更改或删除。 |
属性
| 名称 | 说明 |
|---|---|
| Metadata |
正在配置的密钥。 |
方法
| 名称 | 说明 |
|---|---|
| HasAnnotation(String, Object) |
添加或更新密钥上的批注。 如果具有在 |
显式接口实现
| 名称 | 说明 |
|---|---|
| IInfrastructure<IConventionKeyBuilder>.Instance |
用于配置密钥的内部生成器。 |
| IInfrastructure<IMutableModel>.Instance |
键所属的模型。 |
| IInfrastructure<InternalKeyBuilder>.Instance |
用于配置密钥的内部生成器。 |
扩展方法
| 名称 | 说明 |
|---|---|
| ForSqliteHasName(KeyBuilder, String) |
在面向 SQLite 时配置数据库中密钥约束的名称。 |
| ForSqlServerHasName(KeyBuilder, String) |
在以SQL Server为目标时在数据库中配置密钥约束的名称。 |
| ForSqlServerIsClustered(KeyBuilder, Boolean) |
已过时.
配置在以SQL Server为目标时是否群集密钥。 |
| GetInfrastructure<T>(IInfrastructure<T>) |
从正在使用的隐藏 IInfrastructure<T>属性中获取值。 此方法通常由数据库提供程序(和其他扩展)使用。 它通常不用于应用程序代码。 |
| HasFillFactor(KeyBuilder, Int32) |
配置目标SQL Server时是否使用填充因子选项创建密钥。 |
| HasName(KeyBuilder, String) |
在面向关系数据库时配置数据库中键约束的名称。 |
| IsClustered(KeyBuilder, Boolean) |
配置在以SQL Server为目标时是否群集密钥。 |