Dil

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. Uygulamanın iş parçacığı güvenli olması gerekir. 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

Veri Akışı Adı Description
RelationalModelCustomizer(ModelCustomizerDependencies)

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

Özellikler

Veri Akışı Adı Description
Dependencies

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

(Devralındığı yer: ModelCustomizer)

Yöntemler

Veri Akışı Adı Description
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 adlı 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.

Şunlara uygulanır