KeyBuilder Sınıf

Tanım

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

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 KeyBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.IMutableModel>, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalKeyBuilder>
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>
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 InternalKeyBuilder)
Public Class KeyBuilder
Implements IInfrastructure(Of IConventionKeyBuilder)
Devralma
KeyBuilder
Türetilmiş
Uygulamalar
IInfrastructure<IMutableModel> IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalKeyBuilder> IInfrastructure<IConventionKeyBuilder>

Açıklamalar

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

Oluşturucular

KeyBuilder(IMutableKey)

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.

KeyBuilder(InternalKeyBuilder)

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

Yöntemler

HasAnnotation(String, Object)

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

Belirtik Arabirim Kullanımları

IInfrastructure<IConventionKeyBuilder>.Instance

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

IInfrastructure<IMutableModel>.Instance

Anahtarın ait olduğu model.

IInfrastructure<InternalKeyBuilder>.Instance

Anahtarı 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.

HasName(KeyBuilder, String)

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

ForSqliteHasName(KeyBuilder, String)

SQLite hedeflenirken veritabanında anahtar kısıtlamasının adını yapılandırır.

ForSqlServerHasName(KeyBuilder, String)

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

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

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

IsClustered(KeyBuilder, Boolean)

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

Şunlara uygulanır