Dil

KeyBuilder Sınıf

Tanım

yapılandırmak için basit bir IMutableKeyAPI sağlar.

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

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
KeyBuilder(IMutableKey)

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.

KeyBuilder(InternalKeyBuilder)

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 anahtar.

Yöntemler

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

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

Belirtik Arabirim Kullanımları

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

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

IInfrastructure<IMutableModel>.Instance

Anahtarın ait olduğu model.

IInfrastructure<InternalKeyBuilder>.Instance

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

Uzantı Metotları

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

SQLite'ı hedeflerken veritabanındaki anahtar kısıtlamasının adını yapılandırılır.

ForSqlServerHasName(KeyBuilder, String)

SQL Server hedeflerken veritabanındaki anahtar kısıtlamasının adını yapılandırılır.

ForSqlServerIsClustered(KeyBuilder, Boolean)
Geçersiz.

SQL Server hedeflerken anahtarın kümelenip kümelenmediğini yapılandırılır.

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.

HasFillFactor(KeyBuilder, Int32)

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

HasName(KeyBuilder, String)

İlişkisel veritabanını hedeflerken veritabanındaki anahtar kısıtlamasının adını yapılandırılır.

IsClustered(KeyBuilder, Boolean)

SQL Server hedeflerken anahtarın kümelenip kümelenmediğini yapılandırılır.

Şunlara uygulanır