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
)
パラメーター
- modelBuilder
型 : System.Data.Entity.DbModelBuilder
作成されるコンテキストのモデルを定義するビルダー。
解説
通常、このメソッドは、派生コンテキストの最初のインスタンスの作成時に一度だけ呼び出されます。 その際、そのコンテキストのモデルがキャッシュされ、それ以降はアプリケーション ドメイン内にあるコンテキストのすべてのインスタンスについてキャッシュされます。 このキャッシュは、指定された ModelBuidler で ModelCaching プロパティを設定して無効にできますが、その場合パフォーマンスが大幅に低下することに注意してください。 キャッシュをさらに詳細に制御するには、DbModelBuilder クラスと DbContextFactory クラスを直接使用します。