CollectionOwnershipBuilder Sınıf

Tanım

Bire çok sahipliği yapılandırmak için basit bir API sağlar.

public class CollectionOwnershipBuilder : Microsoft.EntityFrameworkCore.Metadata.Builders.ReferenceCollectionBuilderBase, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>
type CollectionOwnershipBuilder = class
    inherit ReferenceCollectionBuilderBase
    interface IInfrastructure<InternalEntityTypeBuilder>
Public Class CollectionOwnershipBuilder
Inherits ReferenceCollectionBuilderBase
Implements IInfrastructure(Of InternalEntityTypeBuilder)
Devralma
CollectionOwnershipBuilder
Türetilmiş
Uygulamalar
IInfrastructure<Microsoft.EntityFrameworkCore.Metadata.Internal.InternalEntityTypeBuilder>

Oluşturucular

CollectionOwnershipBuilder(EntityType, EntityType, InternalRelationshipBuilder)

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.

CollectionOwnershipBuilder(InternalRelationshipBuilder, CollectionOwnershipBuilder, Boolean, Boolean, Boolean)

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

Builder

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.

(Devralındığı yer: ReferenceCollectionBuilderBase)
DependentEntityType

Bu ilişkiyi yapılandırmak için kullanılan bağımlı varlık türünü alır.

(Devralındığı yer: ReferenceCollectionBuilderBase)
Metadata

Bu ilişkiyi temsil eden yabancı anahtar.

(Devralındığı yer: ReferenceCollectionBuilderBase)
OwnedEntityType

Yapılandırılmış olan varlık türü.

PrincipalEntityType

Bu ilişkiyi yapılandırmak için kullanılan asıl varlık türünü alır.

(Devralındığı yer: ReferenceCollectionBuilderBase)

Yöntemler

FindRelatedEntityType(String, String)

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.

FindRelatedEntityType(Type, String)

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.

HasChangeTrackingStrategy(ChangeTrackingStrategy)

ChangeTrackingStrategyBu varlık türü için kullanılacak öğesini yapılandırır. Bu strateji, bağlamın varlık türü örneği için özelliklerde yapılan değişiklikleri nasıl algıladığını gösterir.

HasData(Object[])

Bu varlığı çekirdek verileri olacak şekilde yapılandırır. Veri hareket geçişleri oluşturmak için kullanılır.

HasEntityTypeAnnotation(String, Object)

Sahip olan varlık türüne ek açıklama ekler veya güncelleştirir. Zaten ' de belirtilen anahtara sahip bir ek açıklama varsa, annotation değeri güncellenir.

HasForeignKey(String[])

Bu ilişki için yabancı anahtar olarak kullanılacak Özellik (ler) i yapılandırır.

Belirtilen özellik adı (ler) varlık türünde yoksa, yabancı anahtar olarak kullanılacak yeni bir gölge durum özelliği eklenir. Bir gölge durumu özelliği, varlık sınıfında karşılık gelen bir özelliği olmayan bir özelliktir. Özelliği için geçerli değer, ChangeTracker varlık sınıfının örneklerine depolanmak yerine içinde depolanır.

HasPrincipalKey(String[])Belirtilmemişse, yabancı anahtar özelliklerinin veri türü ve sırası ile asıl varlık türünün birincil anahtarıyla eşleşmesi için bir girişimde bulunuldu. Bunlar eşleşmiyorsa, başvuru anahtarı olarak kullanılacak asıl varlık türüne benzersiz bir dizin oluşturan yeni gölge durumu özellikleri eklenecektir.

HasForeignKeyAnnotation(String, Object)

Yabancı anahtarda bir ek açıklama ekler veya güncelleştirir. Zaten ' de belirtilen anahtara sahip bir ek açıklama varsa, annotation değeri güncellenir.

HasIndex(String[])

Belirtilen özelliklerde bir dizin yapılandırır. Verilen özellik kümesinde var olan bir dizin varsa, bu durumda yapılandırma için mevcut dizin döndürülür.

HasKey(String[])

Bu sahip olan varlık türü için birincil anahtarı oluşturan özellikleri ayarlar.

HasOne(String, String)

Bu varlık türünün, ilişkide diğer türün tek bir örneğine işaret eden bir başvurusu olduğu bir ilişki yapılandırır.

Bu yöntemin hiçbir parametre olmadan çağrılması, varlık türünde böyle bir özellik olsa bile, ilişkinin bu tarafını hiçbir gezinti özelliği olmadan kullanmak için açıkça yapılandırabileceğinizi unutmayın. Gezinti özelliği kullanılacaksa, belirtilmesi gerekir.

Bu yöntemi çağırdıktan sonra bir çağrısı zincirlemesi gerekir WithMany(String) ya da WithOne(String) ilişkiyi tam olarak yapılandırmak için. Yalnızca bu yöntemi zincirleme çağrı olmadan çağırmak, geçerli bir ilişki oluşturmaz.

HasOne(Type, String)

Bu varlık türünün, ilişkide diğer türün tek bir örneğine işaret eden bir başvurusu olduğu bir ilişki yapılandırır.

Bu yöntemin hiçbir parametre olmadan çağrılması, varlık türünde böyle bir özellik olsa bile, ilişkinin bu tarafını hiçbir gezinti özelliği olmadan kullanmak için açıkça yapılandırabileceğinizi unutmayın. Gezinti özelliği kullanılacaksa, belirtilmesi gerekir.

Bu yöntemi çağırdıktan sonra bir çağrısı zincirlemesi gerekir WithMany(String) ya da WithOne(String) ilişkiyi tam olarak yapılandırmak için. Yalnızca bu yöntemi zincirleme çağrı olmadan çağırmak, geçerli bir ilişki oluşturmaz.

HasPrincipalKey(String[])

Bu ilişkinin hedeflediği benzersiz Özellik (ler) i yapılandırır. Genellikle bu yöntemi, birincil anahtardan başka bir Özellik (ler) olarak kullanmak istiyorsanız çağırabilirsiniz. Belirtilen Özellik (ler) zaten benzersiz bir kısıtlama (veya birincil anahtar) değilse, yeni bir benzersiz kısıtlama tanıtılacaktır.

Ignore(String)

Verilen özelliği varlık türünden dışlar. Bu yöntem genellikle kural tarafından eklenmiş olan varlık türünden özellikleri kaldırmak için kullanılır.

OnDelete(DeleteBehavior)

Asıl öğe silindiğinde veya ilişki olmadığında, ilişkide bağımlı varlıklara bir silme işleminin nasıl uygulanacağını yapılandırır.

OwnsMany(String, String)

Hedef varlığın bu varlığın sahip olduğu bir ilişki yapılandırır (veya bir parçası).

Gezinti aynı türde olsa bile, her bir sahiplik ilişkisinin hedef varlık türü farklı bir varlık türü olarak değerlendirilir. Hedef varlık türünün yapılandırması, diğer sahiplik ilişkilerinin hedef varlık türüne uygulanmıyor.

Sahip olduğu bir varlık üzerindeki çoğu işlem, ilgili gezintiyi kullanarak sahip varlık aracılığıyla buna erişmeyi gerektirir.

OwnsMany(String, String, Action<CollectionOwnershipBuilder>)

Bu varlık türünün ilişkideki diğer türe kimlik sağladığı ilişkiyi yapılandırır.

OwnsMany(Type, String)

Hedef varlığın bu varlığın sahip olduğu bir ilişki yapılandırır (veya bir parçası).

Gezinti aynı türde olsa bile, her bir sahiplik ilişkisinin hedef varlık türü farklı bir varlık türü olarak değerlendirilir. Hedef varlık türünün yapılandırması, diğer sahiplik ilişkilerinin hedef varlık türüne uygulanmıyor.

Sahip olduğu bir varlık üzerindeki çoğu işlem, ilgili gezintiyi kullanarak sahip varlık aracılığıyla buna erişmeyi gerektirir.

OwnsMany(Type, String, Action<CollectionOwnershipBuilder>)

Bu varlık türünün ilişkideki diğer türe kimlik sağladığı ilişkiyi yapılandırır.

OwnsOne(String, String)

Hedef varlığın bu varlığın sahip olduğu bir ilişki yapılandırır (veya bir parçası). Hedef varlık anahtar değeri her zaman ait olduğu varlıktan dağıtılır.

Gezinti aynı türde olsa bile, her bir sahiplik ilişkisinin hedef varlık türü farklı bir varlık türü olarak değerlendirilir. Hedef varlık türünün yapılandırması, diğer sahiplik ilişkilerinin hedef varlık türüne uygulanmıyor.

Sahip olduğu bir varlık üzerindeki çoğu işlem, ilgili gezintiyi kullanarak sahip varlık aracılığıyla buna erişmeyi gerektirir.

OwnsOne(String, String, Action<ReferenceOwnershipBuilder>)

Hedef varlığın bu varlığın sahip olduğu bir ilişki yapılandırır (veya bir parçası). Hedef varlık anahtar değeri her zaman ait olduğu varlıktan dağıtılır.

Gezinti aynı türde olsa bile, her bir sahiplik ilişkisinin hedef varlık türü farklı bir varlık türü olarak değerlendirilir. Hedef varlık türünün yapılandırması, diğer sahiplik ilişkilerinin hedef varlık türüne uygulanmıyor.

Sahip olduğu bir varlık üzerindeki çoğu işlem, ilgili gezintiyi kullanarak sahip varlık aracılığıyla buna erişmeyi gerektirir.

OwnsOne(Type, String)

Hedef varlığın bu varlığın sahip olduğu bir ilişki yapılandırır (veya bir parçası). Hedef varlık anahtar değeri her zaman ait olduğu varlıktan dağıtılır.

Gezinti aynı türde olsa bile, her bir sahiplik ilişkisinin hedef varlık türü farklı bir varlık türü olarak değerlendirilir. Hedef varlık türünün yapılandırması, diğer sahiplik ilişkilerinin hedef varlık türüne uygulanmıyor.

Sahip olduğu bir varlık üzerindeki çoğu işlem, ilgili gezintiyi kullanarak sahip varlık aracılığıyla buna erişmeyi gerektirir.

OwnsOne(Type, String, Action<ReferenceOwnershipBuilder>)

Hedef varlığın bu varlığın sahip olduğu bir ilişki yapılandırır (veya bir parçası). Hedef varlık anahtar değeri her zaman ait olduğu varlıktan dağıtılır.

Gezinti aynı türde olsa bile, her bir sahiplik ilişkisinin hedef varlık türü farklı bir varlık türü olarak değerlendirilir. Hedef varlık türünün yapılandırması, diğer sahiplik ilişkilerinin hedef varlık türüne uygulanmıyor.

Sahip olduğu bir varlık üzerindeki çoğu işlem, ilgili gezintiyi kullanarak sahip varlık aracılığıyla buna erişmeyi gerektirir.

Property(String)

Sahip olduğu varlık türünün bir özelliğini yapılandırmak için kullanılabilecek bir nesne döndürür. Verilen ada sahip bir özellik yoksa, yeni bir özellik eklenecektir.

Bu aşırı yükleme ile yeni bir özellik eklenirken Özellik adı varlık türündeki bir CLR özelliğinin veya alanının adıyla eşleşmelidir. Bu aşırı yükleme yeni bir gölge durumu özelliği eklemek için kullanılamaz.

Property(Type, String)

Sahip olduğu varlık türünün bir özelliğini yapılandırmak için kullanılabilecek bir nesne döndürür. Verilen ada sahip bir özellik yoksa, yeni bir özellik eklenecektir.

Yeni bir özellik eklenirken, varlık sınıfında aynı ada sahip bir özellik varsa, modele eklenecektir. Varlık sınıfında hiçbir özellik yoksa, yeni bir gölge durumu özelliği eklenecektir. Bir gölge durumu özelliği, varlık sınıfında karşılık gelen bir özelliği olmayan bir özelliktir. Özelliği için geçerli değer, ChangeTracker varlık sınıfının örneklerine depolanmak yerine içinde depolanır.

Property<TProperty>(String)

Sahip olduğu varlık türünün bir özelliğini yapılandırmak için kullanılabilecek bir nesne döndürür. Verilen ada sahip bir özellik yoksa, yeni bir özellik eklenecektir.

Yeni bir özellik eklenirken, varlık sınıfında aynı ada sahip bir özellik varsa, modele eklenecektir. Varlık sınıfında hiçbir özellik yoksa, yeni bir gölge durumu özelliği eklenecektir. Bir gölge durumu özelliği, varlık sınıfında karşılık gelen bir özelliği olmayan bir özelliktir. Özelliği için geçerli değer, ChangeTracker varlık sınıfının örneklerine depolanmak yerine içinde depolanır.

UsePropertyAccessMode(PropertyAccessMode)

PropertyAccessModeBu varlık türünün tüm özellikleri için kullanılacak öğesini ayarlar.

Varsayılan olarak, bir kural tarafından bulunursa veya belirtilmişse, genellikle varlıklar veritabanından sorgulandığında, yeni nesneler oluşturulduğunda kullanılır. Özellikler diğer tüm erişimlerde kullanılır. Bu yöntemi çağırmak, bu varlık türünün tüm özellikleri için enum bölümünde açıklandığı gibi bu davranışı değiştirecek PropertyAccessMode .

Bu yöntemin tüm özellikleri için bu yöntemin çağrılması bu varlık için geçersiz kılmaları çağırmak, modelde ayarlanmış olan herhangi bir erişim modunu yazın.

Belirtik Arabirim Kullanımları

IInfrastructure<IMutableModel>.Instance

Bu ilişkinin ait olduğu model.

(Devralındığı yer: ReferenceCollectionBuilderBase)
IInfrastructure<InternalEntityTypeBuilder>.Instance

Sahip olduğu varlık türünü yapılandırmak için kullanılan iç oluşturucuyu alır.

IInfrastructure<InternalRelationshipBuilder>.Instance

Bu ilişkiyi yapılandırmak için kullanılan iç oluşturucuyu alır.

(Devralındığı yer: ReferenceCollectionBuilderBase)

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.

HasConstraintName(CollectionOwnershipBuilder, String)

İlişkisel bir veritabanını hedeflerken bu ilişki için yabancı anahtar kısıtlama adını yapılandırır.

ToTable(CollectionOwnershipBuilder, String)

İlişkisel bir veritabanını hedeflerken varlığın eşlendiği görünümü veya tabloyu yapılandırır.

ToTable(CollectionOwnershipBuilder, String, String)

İlişkisel bir veritabanını hedeflerken varlığın eşlendiği görünümü veya tabloyu yapılandırır.

ForSqlServerIsMemoryOptimized(CollectionOwnershipBuilder, Boolean)

SQL Server hedeflemek için varlığın eşlendiği tabloyu, bellek için iyileştirilmiş olarak yapılandırır.

Şunlara uygulanır