Aracılığıyla paylaş


RelationalModelCustomizer Sınıf

Tanım

Belirli bir bağlam için modeli oluşturur.

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

public class RelationalModelCustomizer : Microsoft.EntityFrameworkCore.Infrastructure.ModelCustomizer
type RelationalModelCustomizer = class
    inherit ModelCustomizer
Public Class RelationalModelCustomizer
Inherits ModelCustomizer
Devralma
RelationalModelCustomizer

Açıklamalar

Hizmet ömrü şeklindedir Singleton. Bu, tek bir örneğin birçok DbContext örnek tarafından kullanıldığı anlamına gelir. Uygulama iş parçacığı açısından güvenli olmalıdır. Bu hizmet olarak Scopedkaydedilen hizmetlere bağımlı olamaz.

Daha fazla bilgi ve örnek için bkz. Veritabanı sağlayıcılarının ve uzantılarının uygulanması .

Oluşturucular

RelationalModelCustomizer(ModelCustomizerDependencies)

RelationalModelCustomizer sınıfının yeni bir örneğini başlatır.

Özellikler

Dependencies

Bu hizmet için bağımlılıklar.

(Devralındığı yer: ModelCustomizer)

Yöntemler

Customize(ModelBuilder, DbContext)

Kural tarafından bulunanlara ek olarak modelin ek yapılandırmasını gerçekleştirir. Bu uygulama, bağlamı çağırarak OnConfiguring(DbContextOptionsBuilder) belirli bir bağlam için modeli oluşturur.

Ayrıca, bağlamda özellik olarak DbSet<TEntity> bulunan varlık türleri DbSet özellik adları için adlandırılmış tablolarla eşlenir ve ile işaretlenen bağlamdaki genel statik yöntemler veritabanı işlevleriyle DbFunctionAttribute eşlenir.

Customize(ModelBuilder, DbContext)

Kural tarafından bulunanlara ek olarak modelin ek yapılandırmasını gerçekleştirir. Bu varsayılan uygulama, bağlamı çağırarak OnModelCreating(ModelBuilder) belirli bir bağlam için modeli oluşturur.

(Devralındığı yer: ModelCustomizer)
FindDbFunctions(ModelBuilder, DbContext)

ile işaretlenmiş bağlamda genel statik yöntemler olarak bulunan model işlevi eşlemelerine DbFunctionAttributeekler.

FindSets(ModelBuilder, DbContext)

Bağlamdaki özelliklerde DbSet<TEntity> bulunan varlık türlerini modele ekler.

FindSets(ModelBuilder, DbContext)

Bağlamdaki özelliklerde DbSet<TEntity> bulunan varlık türlerini modele ekler.

(Devralındığı yer: ModelCustomizer)

Şunlara uygulanır