RuntimeForeignKey Sınıf

Tanım

Bağımlı varlık türündeki özelliklerden oluşan yabancı anahtarın, asıl varlık türünde karşılık gelen birincil veya alternatif anahtara başvurduğu ilişkiyi temsil eder.

public class RuntimeForeignKey : Microsoft.EntityFrameworkCore.Infrastructure.AnnotatableBase, Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeForeignKey
type RuntimeForeignKey = class
    inherit AnnotatableBase
    interface IRuntimeForeignKey
    interface IForeignKey
    interface IReadOnlyForeignKey
    interface IReadOnlyAnnotatable
    interface IAnnotatable
Public Class RuntimeForeignKey
Inherits AnnotatableBase
Implements IRuntimeForeignKey
Devralma
RuntimeForeignKey
Uygulamalar
IAnnotatable IReadOnlyAnnotatable IForeignKey Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeForeignKey IReadOnlyForeignKey

Açıklamalar

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

Oluşturucular

RuntimeForeignKey(IReadOnlyList<RuntimeProperty>, RuntimeKey, RuntimeEntityType, RuntimeEntityType, DeleteBehavior, Boolean, Boolean, Boolean, Boolean)

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ştirirken uygulama hatalarına neden olabileceğini bilmeniz gerekir.

Özellikler

DebugView

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ştirirken uygulama hatalarına neden olabileceğini bilmeniz gerekir.

DeclaringEntityType

Bağımlı varlık türünü alır. Bu, ilişki devralma hiyerarşisinde türetilmiş bir tür tanımlandığında tanımlanan türden Properties farklı olabilir (özellikler bir temel tür üzerinde tanımlanabileceği için).

IsReadOnly

Geçerli nesnenin salt okunur olup olmadığını gösterir.

(Devralındığı yer: AnnotatableBase)
Item[String]

Belirtilen ada sahip değer ek açıklamasını alır ve yoksa döndürür null .

(Devralındığı yer: AnnotatableBase)
PrincipalEntityType

Bu ilişkinin hedef aldığı asıl varlık türünü alır. Bu, ilişki devralma hiyerarşisinde türetilmiş bir türü hedeflediğinde tanımlanan türden PrincipalKey farklı olabilir (anahtar hiyerarşinin temel türünde tanımlandığından).

PrincipalKey

İlişkinin hedef aldığı birincil veya alternatif anahtarı alır.

Properties

Bağımlı varlıktaki yabancı anahtar özelliklerini alır.

ReferencingSkipNavigations

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.

Yöntemler

AddAnnotation(String, Annotation)

Bu nesneye bir ek açıklama ekler. Belirtilen ada sahip bir ek açıklama zaten varsa oluşturur.

(Devralındığı yer: AnnotatableBase)
AddAnnotation(String, Object)

Bu nesneye bir ek açıklama ekler. Belirtilen ada sahip bir ek açıklama zaten varsa oluşturur.

(Devralındığı yer: AnnotatableBase)
AddAnnotations(IEnumerable<IAnnotation>)

Bu nesneye ek açıklamalar ekler.

(Devralındığı yer: AnnotatableBase)
AddAnnotations(IReadOnlyDictionary<String,Object>)

Bu nesneye ek açıklamalar ekler.

(Devralındığı yer: AnnotatableBase)
AddNavigation(RuntimeNavigation, Boolean)

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ştirirken uygulama hatalarına neden olabileceğini bilmeniz gerekir.

AddRuntimeAnnotation(String, Annotation)

Bu nesneye bir çalışma zamanı ek açıklaması ekler. Belirtilen ada sahip bir ek açıklama zaten varsa oluşturur.

(Devralındığı yer: AnnotatableBase)
AddRuntimeAnnotation(String, Object)

Bu nesneye bir çalışma zamanı ek açıklaması ekler. Belirtilen ada sahip bir ek açıklama zaten varsa oluşturur.

(Devralındığı yer: AnnotatableBase)
AddRuntimeAnnotations(IEnumerable<Annotation>)

Bu nesneye çalışma zamanı ek açıklamaları ekler.

(Devralındığı yer: AnnotatableBase)
AddRuntimeAnnotations(IReadOnlyDictionary<String,Object>)

Bu nesneye çalışma zamanı ek açıklamaları ekler.

(Devralındığı yer: AnnotatableBase)
CreateAnnotation(String, Object)

Yeni bir ek açıklama oluşturur.

(Devralındığı yer: AnnotatableBase)
CreateRuntimeAnnotation(String, Object)

Yeni bir çalışma zamanı ek açıklaması oluşturur.

(Devralındığı yer: AnnotatableBase)
EnsureMutable()

Model salt okunursa oluşturur.

(Devralındığı yer: AnnotatableBase)
EnsureReadOnly()

Model salt okunur değilse oluşturur.

(Devralındığı yer: AnnotatableBase)
FindAnnotation(String)

Belirtilen ada sahip ek açıklamayı alır ve yoksa döndürür null .

(Devralındığı yer: AnnotatableBase)
FindRuntimeAnnotation(String)

Belirtilen ada sahip çalışma zamanı ek açıklamasını alır ve yoksa döndürür null .

(Devralındığı yer: AnnotatableBase)
GetAnnotation(String)

Belirtilen ada sahip ek açıklamayı alır ve yoksa oluşturur.

(Devralındığı yer: AnnotatableBase)
GetAnnotations()

Geçerli nesnedeki tüm ek açıklamaları alır.

(Devralındığı yer: AnnotatableBase)
GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Verilen adla çalışma zamanı ek açıklamasının değerini alır ve yoksa ekler.

(Devralındığı yer: AnnotatableBase)
GetRuntimeAnnotations()

Geçerli nesnedeki tüm çalışma zamanı ek açıklamalarını alır.

(Devralındığı yer: AnnotatableBase)
OnAnnotationSet(String, Annotation, Annotation)

Ek açıklama ayarlandığında veya kaldırıldığında çağrılır.

(Devralındığı yer: AnnotatableBase)
RemoveAnnotation(String)

Verilen ek açıklamayı bu nesneden kaldırır.

(Devralındığı yer: AnnotatableBase)
RemoveRuntimeAnnotation(String)

Verilen çalışma zamanı ek açıklamasını bu nesneden kaldırır.

(Devralındığı yer: AnnotatableBase)
SetAnnotation(String, Annotation, Annotation)

Verilen anahtar altında depolanan ek açıklamayı ayarlar. Belirtilen ada sahip bir ek açıklama zaten varsa mevcut ek açıklamanın üzerine yazar.

(Devralındığı yer: AnnotatableBase)
SetAnnotation(String, Object)

Verilen anahtar altında depolanan ek açıklamayı ayarlar. Belirtilen ada sahip bir ek açıklama zaten varsa mevcut ek açıklamanın üzerine yazar.

(Devralındığı yer: AnnotatableBase)
SetRuntimeAnnotation(String, Annotation, Annotation)

Verilen anahtar altında depolanan çalışma zamanı ek açıklamasını ayarlar. Belirtilen ada sahip bir ek açıklama zaten varsa mevcut ek açıklamanın üzerine yazar.

(Devralındığı yer: AnnotatableBase)
SetRuntimeAnnotation(String, Object)

Verilen anahtar altında depolanan çalışma zamanı ek açıklamasını ayarlar. Belirtilen ada sahip bir ek açıklama zaten varsa mevcut ek açıklamanın üzerine yazar.

(Devralındığı yer: AnnotatableBase)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

Belirtik Arabirim Kullanımları

IAnnotatable.AddRuntimeAnnotation(String, Object)

Bu nesneye bir çalışma zamanı ek açıklaması ekler. Belirtilen ada sahip bir ek açıklama zaten varsa oluşturur.

(Devralındığı yer: AnnotatableBase)
IAnnotatable.FindRuntimeAnnotation(String)

Belirtilen ada sahip çalışma zamanı ek açıklamasını alır ve yoksa döndürür null .

(Devralındığı yer: AnnotatableBase)
IAnnotatable.GetRuntimeAnnotations()

Geçerli nesnedeki tüm çalışma zamanı ek açıklamalarını alır.

(Devralındığı yer: AnnotatableBase)
IAnnotatable.RemoveRuntimeAnnotation(String)

Verilen çalışma zamanı ek açıklamasını bu nesneden kaldırır.

(Devralındığı yer: AnnotatableBase)
IAnnotatable.SetRuntimeAnnotation(String, Object)

Verilen anahtar altında depolanan çalışma zamanı ek açıklamasını ayarlar. Belirtilen ada sahip bir ek açıklama zaten varsa mevcut ek açıklamanın üzerine yazar.

(Devralındığı yer: AnnotatableBase)
IForeignKey.DeclaringEntityType

Bağımlı varlık türünü alır. Bu, ilişki devralma hiyerarşisinde türetilmiş bir tür tanımlandığında tanımlanan türden Properties farklı olabilir (özellikler bir temel tür üzerinde tanımlanabileceği için).

IForeignKey.DependentToPrincipal

Asıl varlığa işaret eden bağımlı varlık türündeki gezinti özelliğini alır.

IForeignKey.GetDependentKeyValueFactory()

Varlık verilerinin çeşitli biçimlerinden alınan yabancı anahtar değerlerini temel alan anahtar değerleri için bir fabrika oluşturur.

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

IForeignKey.GetDependentKeyValueFactory<TKey>()

Varlık verilerinin çeşitli biçimlerinden alınan yabancı anahtar değerlerini temel alan anahtar değerleri için bir fabrika oluşturur.

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

IForeignKey.PrincipalEntityType

Bu ilişkinin hedeflediğini asıl varlık türünü alır. Bu, ilişki devralma hiyerarşisindeki türetilmiş bir türü hedeflediğinde tanımlanan türden PrincipalKey farklı olabilir (anahtar hiyerarşinin temel türünde tanımlandığından).

IForeignKey.PrincipalKey

İlişkinin hedeflediğini birincil veya alternatif anahtarı alır.

IForeignKey.PrincipalToDependent

Bağımlı varlığa işaret eden asıl varlık türündeki gezinti özelliğini alır.

IForeignKey.Properties

Bağımlı varlıktaki yabancı anahtar özelliklerini alır.

IReadOnlyAnnotatable.FindAnnotation(String)

Belirtilen ada sahip ek açıklamayı alır ve yoksa döndürür null .

(Devralındığı yer: AnnotatableBase)
IReadOnlyAnnotatable.GetAnnotations()

Geçerli nesnedeki tüm ek açıklamaları alır.

(Devralındığı yer: AnnotatableBase)
IReadOnlyAnnotatable.Item[String]

Belirtilen ada sahip ek açıklamanın değerini alır ve yoksa döndürür null .

(Devralındığı yer: AnnotatableBase)
IReadOnlyForeignKey.DeclaringEntityType

Bağımlı varlık türünü alır. Bu, ilişki devralma hiyerarşisinde türetilmiş bir tür tanımlandığında tanımlanan türden Properties farklı olabilir (özellikler bir temel tür üzerinde tanımlanabileceği için).

IReadOnlyForeignKey.DeleteBehavior

Sorumlu silindiğinde veya ilişki kesildiğinde ilişkideki bağımlı varlıklara silme işleminin nasıl uygulandığını gösteren bir değer alır.

IReadOnlyForeignKey.DependentToPrincipal

Asıl varlığa işaret eden bağımlı varlık türündeki gezinti özelliğini alır.

IReadOnlyForeignKey.GetReferencingSkipNavigations()

Bu yabancı anahtarı kullanarak atlama gezintilerini alır.

IReadOnlyForeignKey.IsOwnership

Bu ilişkinin bir sahipliği tanımlayıp tanımlamadığını belirten bir değer alır. ise true, bağımlı varlığa her zaman asıl varlıktan gezinti yoluyla erişilmelidir.

IReadOnlyForeignKey.IsRequired

Asıl varlığın gerekli olup olmadığını belirten bir değer alır. ise true, bağımlı varlık her zaman geçerli bir asıl varlığa atanmalıdır.

IReadOnlyForeignKey.IsRequiredDependent

Bağımlı varlığın gerekli olup olmadığını belirten bir değer alır. ise true, asıl varlığın her zaman geçerli bir bağımlı varlığı atanmış olmalıdır.

IReadOnlyForeignKey.IsUnique

Yabancı anahtar özelliklerine atanan değerlerin benzersiz olup olmadığını gösteren bir değer alır.

IReadOnlyForeignKey.PrincipalEntityType

Bu ilişkinin hedeflediğini asıl varlık türünü alır. Bu, ilişki devralma hiyerarşisindeki türetilmiş bir türü hedeflediğinde tanımlanan türden PrincipalKey farklı olabilir (anahtar hiyerarşinin temel türünde tanımlandığından).

IReadOnlyForeignKey.PrincipalKey

İlişkinin hedeflediğini birincil veya alternatif anahtarı alır.

IReadOnlyForeignKey.PrincipalToDependent

Bağımlı varlığa işaret eden asıl varlık türündeki gezinti özelliğini alır.

IReadOnlyForeignKey.Properties

Bağımlı varlıktaki yabancı anahtar özelliklerini alır.

IRuntimeForeignKey.DependentKeyValueFactory

Bağımlı varlık türündeki özelliklerden oluşan yabancı anahtarın, asıl varlık türünde karşılık gelen birincil veya alternatif anahtara başvurduğu ilişkiyi temsil eder.

IRuntimeForeignKey.DependentsMapFactory

Bağımlı varlık türündeki özelliklerden oluşan yabancı anahtarın, asıl varlık türünde karşılık gelen birincil veya alternatif anahtara başvurduğu ilişkiyi temsil eder.

Uzantı Metotları

GetDependentKeyValueFactory<TKey>(IForeignKey)

Varlık verilerinin çeşitli biçimlerinden alınan yabancı anahtar değerlerini temel alan anahtar değerleri için bir fabrika oluşturur.

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

GetNavigation(IForeignKey, Boolean)

Bu yabancı anahtarla ilişkilendirilmiş bir gezinti döndürür.

GetRelatedEntityType(IForeignKey, IEntityType)

Verilen varlık türüyle ilgili varlık türünü alır.

IsBaseLinking(IForeignKey)

Yabancı anahtarın birincil anahtarda tanımlanıp tanımlanmadığını belirten ve aynı birincil anahtarı işaret eden bir değer döndürür.

ToDebugString(IForeignKey, MetadataDebugStringOptions, Int32)

Verilen meta verilerin insan tarafından okunabilir bir gösterimini oluşturur.

Uyarı: Döndürülen dizenin biçimine güvenmeyin. Yalnızca hata ayıklama için tasarlanmıştır ve yayınlar arasında rastgele değiştirilebilir.

AnnotationsToDebugString(IAnnotatable, Int32)

Nesnede bildirilen tüm ek açıklamalar için hata ayıklama dizesini alır.

FindSharedObjectRootForeignKey(IForeignKey, StoreObjectIdentifier)

Paylaşılan tablo benzeri bir nesnede aynı kısıtlamayla eşlenen ilki IConventionForeignKey bulur.

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

FindSharedObjectRootForeignKey(IReadOnlyForeignKey, StoreObjectIdentifier)

Paylaşılan tablo benzeri bir nesnede aynı kısıtlamayla eşlenen ilki IForeignKey bulur.

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

GetConstraintName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Yabancı anahtar kısıtlama adını döndürür.

GetConstraintName(IForeignKey)

Yabancı anahtar kısıtlama adını döndürür.

GetConstraintName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Yabancı anahtar kısıtlama adını döndürür.

GetConstraintName(IReadOnlyForeignKey)

Yabancı anahtar kısıtlama adını döndürür.

GetDefaultName(IForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Bu yabancı anahtar için kullanılacak varsayılan kısıtlama adını döndürür.

GetDefaultName(IForeignKey)

Bu yabancı anahtar için kullanılacak varsayılan kısıtlama adını döndürür.

GetDefaultName(IReadOnlyForeignKey, StoreObjectIdentifier, StoreObjectIdentifier)

Bu yabancı anahtar için kullanılacak varsayılan kısıtlama adını döndürür.

GetDefaultName(IReadOnlyForeignKey)

Bu yabancı anahtar için kullanılacak varsayılan kısıtlama adını döndürür.

GetMappedConstraints(IForeignKey)

Yabancı anahtarın eşlendiği yabancı anahtar kısıtlamalarını alır.

IsRowInternal(IReadOnlyForeignKey, StoreObjectIdentifier)

Bu yabancı anahtarın aynı tablo benzeri depo nesnesini paylaşan iki varlık türü arasında olup olmadığını belirten bir değer döndürür.

GetFluentApiCalls(IForeignKey, IAnnotationCodeGenerator, Boolean)

Yabancı anahtarı yapılandırmak için akıcı API çağrılarını alır.

Şunlara uygulanır