语言

IndexBuilder 类

定义

提供用于配置 .IMutableIndex

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

注解

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

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

构造函数

名称 说明
IndexBuilder(IMutableIndex)

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

IndexBuilder(InternalIndexBuilder)

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

属性

名称 说明
Metadata

正在配置的索引。

方法

名称 说明
HasAnnotation(String, Object)

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

IsDescending(Boolean[])

为此索引的列配置排序顺序(升序或降序)。

IsUnique(Boolean)

配置此索引是否唯一(即每个实例的值必须唯一)。

显式接口实现

名称 说明
IInfrastructure<IConventionIndexBuilder>.Instance

用于配置索引的内部生成器。

IInfrastructure<IMutableModel>.Instance

索引所属的模型。

IInfrastructure<InternalIndexBuilder>.Instance

用于配置索引的内部生成器。

扩展方法

名称 说明
ForSqliteHasName(IndexBuilder, String)

在面向 SQLite 时配置数据库中索引的名称。

ForSqlServerHasName(IndexBuilder, String)

在以SQL Server为目标时配置数据库中索引的名称。

ForSqlServerInclude(IndexBuilder, String[])
已过时.

配置索引包括目标SQL Server时的属性。

ForSqlServerIsClustered(IndexBuilder, Boolean)
已过时.

配置目标SQL Server时是否聚集索引。

ForSqlServerIsCreatedOnline(IndexBuilder, Boolean)
已过时.

配置目标SQL Server时是否使用联机选项创建索引。

ForVectors(IndexBuilder, Nullable<VectorIndexType>)

将索引配置为具有给定矢量索引类型的向量索引,例如“flat”、“diskANN”或“quantizedFlat”。 有关详细信息,请参阅Azure Cosmos DB中的矢量搜索,了解NoSQL。

GetInfrastructure<T>(IInfrastructure<T>)

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

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

HasDatabaseName(IndexBuilder, String)

在针对关系数据库时配置数据库中索引的名称。

HasFillFactor(IndexBuilder, Int32)

配置目标SQL Server时是否使用填充因子选项创建索引。

HasFilter(IndexBuilder, String)

配置索引的筛选器表达式。

HasName(IndexBuilder, String)
已过时.

在针对关系数据库时配置数据库中索引的名称。

IncludeProperties(IndexBuilder, String[])

配置索引包括目标SQL Server时的属性。

IsClustered(IndexBuilder, Boolean)

配置目标SQL Server时是否聚集索引。

IsCreatedOnline(IndexBuilder, Boolean)

配置目标SQL Server时是否使用联机选项创建索引。

IsFullTextIndex(IndexBuilder, Boolean)

将索引配置为全文索引。 有关详细信息,请参阅Azure Cosmos DB中的全文搜索,了解NoSQL。

IsVectorIndex(IndexBuilder, Nullable<VectorIndexType>, Boolean)

将索引配置为具有给定矢量索引类型的向量索引,例如“flat”、“diskANN”或“quantizedFlat”。 有关详细信息,请参阅Azure Cosmos DB中的矢量搜索,了解NoSQL。

IsVectorIndex(IndexBuilder, Nullable<VectorIndexType>)

将索引配置为具有给定矢量索引类型的向量索引,例如“flat”、“diskANN”或“quantizedFlat”。 有关详细信息,请参阅Azure Cosmos DB中的矢量搜索,了解NoSQL。

SortInTempDb(IndexBuilder, Boolean)

配置在以 tempdb 选项为目标时是否使用 sort 创建索引SQL Server。

UseDataCompression(IndexBuilder, DataCompressionType)

配置目标SQL Server时是否使用数据压缩选项创建索引。

适用于