/// <summary> /// 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. /// </summary> /// <param name="modelBuilder"> /// The builder that defines the model for the context being created. /// </param> /// <remarks> /// 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 ModelBuidler, but note that this /// can seriously degrade performance. More control over /// caching is provided through use of the DbModelBuilder /// and DbContextFactory classes directly. /// </remarks> protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); modelBuilder.Conventions.Remove<ManyToManyCascadeDeleteConvention>(); modelBuilder .ConfigureJobs() .ConfigureAssets(); }