Partager via


IndexBuilder Classe

Définition

Fournit une API simple pour la configuration d’un IMutableIndex.

public class IndexBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.IMutableModel>, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalIndexBuilder>
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>
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 InternalIndexBuilder)
Public Class IndexBuilder
Implements IInfrastructure(Of IConventionIndexBuilder)
Héritage
IndexBuilder
Dérivé
Implémente
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalIndexBuilder> IInfrastructure<IConventionIndexBuilder>

Remarques

Les instances de cette classe sont retournées par les méthodes lors de l’utilisation de l’API ModelBuilder et elle n’est pas conçue pour être construite directement dans le code de votre application.

Pour plus d’informations et d’exemples, consultez Modélisation des types d’entités et des relations .

Constructeurs

IndexBuilder(IMutableIndex)

Il s’agit d’une API interne qui prend en charge l’infrastructure Entity Framework Core et qui n’est pas soumise aux mêmes normes de compatibilité que les API publiques. Il peut être modifié ou supprimé sans préavis dans n’importe quelle version. Vous devez uniquement l’utiliser directement dans votre code avec une extrême prudence et en sachant que cela peut entraîner des échecs d’application lors de la mise à jour vers une nouvelle version d’Entity Framework Core.

IndexBuilder(InternalIndexBuilder)

Cette API prend en charge l’infrastructure Entity Framework Core et n’est pas destinée à être utilisée directement à partir de votre code. Cette API pourra être changée ou supprimée dans les versions ultérieures.

Propriétés

Metadata

Index en cours de configuration.

Méthodes

HasAnnotation(String, Object)

Ajoute ou met à jour une annotation sur l’index. Si une annotation avec la clé spécifiée dansannotation existe déjà, sa valeur sera mise à jour.

IsDescending(Boolean[])

Configure le ou les ordres de tri pour les colonnes de cet index (croissant ou décroissant).

IsUnique(Boolean)

Configure si cet index est unique (c’est-à-dire que la ou les valeurs de chaque instance doivent être uniques).

Implémentations d’interfaces explicites

IInfrastructure<IConventionIndexBuilder>.Instance

Générateur interne utilisé pour configurer l’index.

IInfrastructure<IMutableModel>.Instance

Modèle auquel appartient l’index.

IInfrastructure<InternalIndexBuilder>.Instance

Générateur interne utilisé pour configurer l’index.

Méthodes d’extension

GetInfrastructure<T>(IInfrastructure<T>)

Obtient la valeur d’une propriété masquée à l’aide IInfrastructure<T>de .

Cette méthode est généralement utilisée par les fournisseurs de base de données (et d’autres extensions). Il n’est généralement pas utilisé dans le code de l’application.

HasDatabaseName(IndexBuilder, String)

Configure le nom de l’index dans la base de données lors du ciblage d’une base de données relationnelle.

HasFilter(IndexBuilder, String)

Configure l’expression de filtre pour l’index.

HasName(IndexBuilder, String)
Obsolète..

Configure le nom de l’index dans la base de données lors du ciblage d’une base de données relationnelle.

ForSqliteHasName(IndexBuilder, String)

Configure le nom de l’index dans la base de données lors du ciblage de SQLite.

ForSqlServerHasName(IndexBuilder, String)

Configure le nom de l’index dans la base de données lors du ciblage de SQL Server.

ForSqlServerInclude(IndexBuilder, String[])
Obsolète..

Configure les propriétés include de l’index lors du ciblage de SQL Server.

ForSqlServerIsClustered(IndexBuilder, Boolean)
Obsolète..

Configure si l’index est cluster lors du ciblage de SQL Server.

ForSqlServerIsCreatedOnline(IndexBuilder, Boolean)
Obsolète..

Configure si l’index est créé avec l’option en ligne lors du ciblage de SQL Server.

HasFillFactor(IndexBuilder, Int32)

Configure si l’index est créé avec l’option de facteur de remplissage lors du ciblage de SQL Server.

IncludeProperties(IndexBuilder, String[])

Configure les propriétés include de l’index lors du ciblage de SQL Server.

IsClustered(IndexBuilder, Boolean)

Configure si l’index est cluster lors du ciblage de SQL Server.

IsCreatedOnline(IndexBuilder, Boolean)

Configure si l’index est créé avec l’option en ligne lors du ciblage de SQL Server.

SortInTempDb(IndexBuilder, Boolean)

Configure si l’index est créé avec l’option trier dans tempdb lors du ciblage de SQL Server.

UseDataCompression(IndexBuilder, DataCompressionType)

Configure si l’index est créé avec l’option de compression de données lors du ciblage de SQL Server.

S’applique à