IndexBuilder Sınıf

Tanım

Yapılandırmak için basit bir API sağlar IMutableIndex .

Bu sınıfın örnekleri API kullanılırken metotlardan döndürülür ModelBuilder ve uygulama kodunuzda doğrudan kullanılmak üzere tasarlanmamıştır.

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

Açıklamalar

Daha fazla bilgi için bkz. varlık türlerini ve Ilişkilerini modelleme .

Oluşturucular

IndexBuilder(IMutableIndex)

Bu, Entity Framework Core altyapısını destekleyen ve genel API 'Lerle aynı uyumluluk standartlarına tabi olmayan bir iç API 'dir. Herhangi bir yayında bildirimde bulunulmadan değiştirilebilir veya kaldırılabilir. Bu kodu yalnızca, büyük bir uyarı ile doğrudan kodunuzda kullanmanız ve bunu yapmanın, yeni bir Entity Framework Core sürümüne güncelleştirme yaparken uygulama hatalarıyla sonuçlanabileceğini bilmeniz gerekir.

IndexBuilder(InternalIndexBuilder)

Bu API Entity Framework Core altyapısını destekler ve doğrudan kodunuzdan kullanılmaya yönelik değildir. Bu API, gelecek sürümlerde değişebilir veya kaldırılabilir.

Özellikler

Metadata

Yapılandırılmakta olan dizin.

Yöntemler

HasAnnotation(String, Object)

Dizine bir ek açıklama ekler veya güncelleştirir. İçinde anahtarı belirtilen bir ek açıklama annotation zaten var, değeri güncelleştirilecektir.

IsUnique(Boolean)

Bu dizinin benzersiz olup olmadığını yapılandırır (yani her örnek için değer (ler) benzersiz olmalıdır).

Belirtik Arabirim Kullanımları

IInfrastructure<IConventionIndexBuilder>.Instance

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

IInfrastructure<IMutableModel>.Instance

Dizinin ait olduğu model.

IInfrastructure<InternalIndexBuilder>.Instance

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

Uzantı Metotları

GetInfrastructure<T>(IInfrastructure<T>)

Kullanılarak gizlenen bir özellikten değeri alır IInfrastructure<T> .

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

IInfrastructure<T> , uygulama kodunda kullanılması amaçlanmayan ancak veritabanı sağlayıcıları tarafından yazılan genişletme yöntemlerinde kullanılabilen özellikleri gizlemek için kullanılır.

HasDatabaseName(IndexBuilder, String)

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

HasFilter(IndexBuilder, String)

Dizin için filtre ifadesini yapılandıran.

HasName(IndexBuilder, String)
Kullanımdan kalktı.

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

ForSqliteHasName(IndexBuilder, String)

SQLite hedeflenirken veritabanındaki dizin adını yapılandırır.

ForSqlServerHasName(IndexBuilder, String)

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

ForSqlServerInclude(IndexBuilder, String[])
Kullanımdan kalktı.

SQL Server hedeflenirken Dizin içerme özelliklerini yapılandırır.

ForSqlServerIsClustered(IndexBuilder, Boolean)
Kullanımdan kalktı.

SQL Server hedeflenirken dizinin kümelenmiş olup olmadığını yapılandırır.

ForSqlServerIsCreatedOnline(IndexBuilder, Boolean)
Kullanımdan kalktı.

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

HasFillFactor(IndexBuilder, Int32)

SQL Server hedeflenirken, dizinin Fill Factor seçeneğiyle oluşturulup oluşturulmayacağını yapılandırır.

IncludeProperties(IndexBuilder, String[])

SQL Server hedeflenirken Dizin içerme özelliklerini yapılandırır.

IsClustered(IndexBuilder, Boolean)

Dizin kümelenmiş olup olmadığını yapılandırarak hedef SQL Server.

IsCreatedOnline(IndexBuilder, Boolean)

Dizin, çevrimiçi seçenekle oluşturulurken dizin oluşturulıp oluşturul SQL Server.

Şunlara uygulanır