Share via


DbContext.OnModelCreating 方法

[此頁面專屬於 Entity Framework 第 6 版。最新版本可從 'Entity Framework' NuGet 套件取得。如需 Entity Framework 的詳細資訊,請參閱 msdn.com/data/ef。]

此方法的呼叫時機是在初始化衍生內容的模型時,但在鎖定此模型及使用此模型初始化內容之前。 此方法的預設實作不會做任何事,但是可以在衍生類別中覆寫它,以便可以進一步設定此模型然後再將它鎖定。

命名空間:  System.Data.Entity
組件:  EntityFramework (在 EntityFramework.dll 中)

語法

'宣告
Protected Overridable Sub OnModelCreating ( _
    modelBuilder As DbModelBuilder _
)
'用途
Dim modelBuilder As DbModelBuilder 

Me.OnModelCreating(modelBuilder)
protected virtual void OnModelCreating(
    DbModelBuilder modelBuilder
)
protected:
virtual void OnModelCreating(
    DbModelBuilder^ modelBuilder
)
abstract OnModelCreating : 
        modelBuilder:DbModelBuilder -> unit  
override OnModelCreating : 
        modelBuilder:DbModelBuilder -> unit
protected function OnModelCreating(
    modelBuilder : DbModelBuilder
)

參數

備註

一般來說,只有當建立衍生內容的第一個執行個體時,才會呼叫此方法一次。 然後該內容的模型便會快取,並適用於應用程式定義域中此內容的所有進一步的執行個體。 若要停用此快取,可在給定的 ModelBuidler 上設定 ModelCaching 屬性,但請注意,這樣可能會大幅降低效能。 對快取的更大控制權是透過 DbModelBuilder 和 DbContextFactory 類別的直接使用來提供。

請參閱

參考

DbContext 類別

System.Data.Entity 命名空間