Share via

DbContext.OnModelCreating(DbModelBuilder) Method


This method is called when the model for a derived context has been initialized, but before the model has been locked down and used to initialize the context. The default implementation of this method does nothing, but it can be overridden in a derived class such that the model can be further configured before it is locked down.

protected virtual void OnModelCreating (System.Data.Entity.DbModelBuilder modelBuilder);
abstract member OnModelCreating : System.Data.Entity.DbModelBuilder -> unit
override this.OnModelCreating : System.Data.Entity.DbModelBuilder -> unit
Protected Overridable Sub OnModelCreating (modelBuilder As DbModelBuilder)



The builder that defines the model for the context being created.


Typically, this method is called only once when the first instance of a derived context is created. The model for that context is then cached and is for all further instances of the context in the app domain. This caching can be disabled by setting the ModelCaching property on the given ModelBuilder, but note that this can seriously degrade performance. More control over caching is provided through use of the DbModelBuilder and DbContextFactory classes directly.

Applies to