RelationalModelCustomizer Sınıf

Tanım

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

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

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

Açıklamalar

Daha fazla bilgi için bkz. veritabanı sağlayıcıları ve uzantıları uygulama .

Oluşturucular

RelationalModelCustomizer(ModelCustomizerDependencies)

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

Özellikler

Dependencies

Bu hizmetin bağımlılıkları.

(Devralındığı yer: ModelCustomizer)

Yöntemler

Customize(ModelBuilder, DbContext)

Kurala göre keşfedilecek ek ek olarak modelin ek yapılandırmasını gerçekleştirir. Bu uygulama, bağlamı çağırarak belirli bir bağlam için modeli oluşturur OnConfiguring(DbContextOptionsBuilder) .

Ayrıca, bağlamda özellikler olarak bulunan varlık türleri DbSet<TEntity> DbSet Özellik adları için adlı tablolarla eşlenir ve ile işaretlenen bağlamdaki ortak statik yöntemler DbFunctionAttribute veritabanı işlevlerine 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 modeli verilen bir OnModelCreating(ModelBuilder) bağlam için derleme.

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

İle işaretlenmiş bağlamda ortak statik yöntemler olarak bulunan model işlev eşlemelerine ekler DbFunctionAttribute .

FindSets(ModelBuilder, DbContext)

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

FindSets(ModelBuilder, DbContext)

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

(Devralındığı yer: ModelCustomizer)

Şunlara uygulanır