Dil

IndexBuilder Sınıf

Tanım

yapılandırmaya yönelik basit bir IMutableIndexAPI sağlar.

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)
Devralma
IndexBuilder
Türetilmiş
Özellikler
Uygulamalar
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalIndexBuilder> IInfrastructure<IConventionIndexBuilder>

Açıklamalar

Bu sınıfın örnekleri API kullanılırken ModelBuilder yöntemlerden döndürülür ve uygulama kodunuzda doğrudan oluşturulacak şekilde tasarlanmamıştır.

Daha fazla bilgi ve örnek için bkz. Varlık türlerini ve ilişkilerini modelleme .

Oluşturucular

Veri Akışı Adı Description
IndexBuilder(IMutableIndex)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IndexBuilder(InternalIndexBuilder)

Bu API, Entity Framework Core altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır. Bu API gelecek sürümlerde değiştirilebilir veya kaldırılabilir.

Özellikler

Veri Akışı Adı Description
Metadata

Yapılandırılan dizin.

Yöntemler

Veri Akışı Adı Description
HasAnnotation(String, Object)

Dizine ek açıklama ekler veya güncelleştirir. anahtarıyla bir ek açıklama belirtildiyse annotation zaten var olan değeri güncelleştirilecek.

IsDescending(Boolean[])

Bu dizinin sütunları için sıralama düzenlerini yapılandıran (artan veya azalan).

IsUnique(Boolean)

Bu dizinin benzersiz olup olmadığını (örneğin, her örneğin değerlerinin benzersiz olması gerekir) yapılandırılır.

Belirtik Arabirim Kullanımları

Veri Akışı Adı Description
IInfrastructure<IConventionIndexBuilder>.Instance

Dizini yapılandırmak için kullanılan iç oluşturucu.

IInfrastructure<IMutableModel>.Instance

Dizinin ait olduğu model.

IInfrastructure<InternalIndexBuilder>.Instance

Dizini yapılandırmak için kullanılan iç oluşturucu.

Uzantı Metotları

Veri Akışı Adı Description
ForSqliteHasName(IndexBuilder, String)

SQLite'i hedeflerken veritabanındaki dizinin adını yapılandırılır.

ForSqlServerHasName(IndexBuilder, String)

SQL Server hedeflerken veritabanındaki dizinin adını yapılandırılır.

ForSqlServerInclude(IndexBuilder, String[])
Geçersiz.

SQL Server hedeflerken dizin ekleme özelliklerini yapılandırıyor.

ForSqlServerIsClustered(IndexBuilder, Boolean)
Geçersiz.

SQL Server hedeflerken dizinin kümelenip kümelenmeyeceğini yapılandırılır.

ForSqlServerIsCreatedOnline(IndexBuilder, Boolean)
Geçersiz.

SQL Server hedeflerken dizinin çevrimiçi seçenekle oluşturulup oluşturulmayacağını yapılandırılır.

ForVectors(IndexBuilder, Nullable<VectorIndexType>)

Dizini, "flat", "diskANN" veya "quantizedFlat" gibi verilen vektör dizin türüyle bir vektör dizini olarak yapılandırılır. Daha fazla bilgi için NoSQL için bkz. Azure Cosmos DB Vektör Arama.

GetInfrastructure<T>(IInfrastructure<T>)

kullanılarak IInfrastructure<T>gizlenen bir özellikten değerini alır.

Bu yöntem genellikle veritabanı sağlayıcıları (ve diğer uzantılar) tarafından kullanılır. Genellikle uygulama kodunda kullanılmaz.

HasDatabaseName(IndexBuilder, String)

İlişkisel veritabanını hedeflerken veritabanındaki dizinin adını yapılandırılır.

HasFillFactor(IndexBuilder, Int32)

SQL Server hedeflerken dizinin dolgu faktörü seçeneğiyle oluşturulup oluşturulmayacağını yapılandırılır.

HasFilter(IndexBuilder, String)

Dizin için filtre ifadesini yapılandırıyor.

HasName(IndexBuilder, String)
Geçersiz.

İlişkisel veritabanını hedeflerken veritabanındaki dizinin adını yapılandırılır.

IncludeProperties(IndexBuilder, String[])

SQL Server hedeflerken dizin ekleme özelliklerini yapılandırıyor.

IsClustered(IndexBuilder, Boolean)

SQL Server hedeflerken dizinin kümelenip kümelenmeyeceğini yapılandırılır.

IsCreatedOnline(IndexBuilder, Boolean)

SQL Server hedeflerken dizinin çevrimiçi seçenekle oluşturulup oluşturulmayacağını yapılandırılır.

IsFullTextIndex(IndexBuilder, Boolean)

Dizini tam metin dizini olarak yapılandırılır. Daha fazla bilgi için NoSQL için bkz. Azure Cosmos DB'de tam metin araması.

IsVectorIndex(IndexBuilder, Nullable<VectorIndexType>, Boolean)

Dizini, "flat", "diskANN" veya "quantizedFlat" gibi verilen vektör dizin türüyle bir vektör dizini olarak yapılandırılır. Daha fazla bilgi için NoSQL için bkz. Azure Cosmos DB Vektör Arama.

IsVectorIndex(IndexBuilder, Nullable<VectorIndexType>)

Dizini, "flat", "diskANN" veya "quantizedFlat" gibi verilen vektör dizin türüyle bir vektör dizini olarak yapılandırılır. Daha fazla bilgi için NoSQL için bkz. Azure Cosmos DB Vektör Arama.

SortInTempDb(IndexBuilder, Boolean)

SQL Server hedeflerken dizinin tempdb'de sıralama seçeneğiyle oluşturulup oluşturulmayacağını yapılandırılır.

UseDataCompression(IndexBuilder, DataCompressionType)

SQL Server hedeflerken dizinin veri sıkıştırma seçeneğiyle oluşturulup oluşturulmayacağını yapılandırılır.

Şunlara uygulanır