protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Conventions.Remove <PluralizingTableNameConvention>(); modelBuilder.ApplyDiscoverMappingConventionsToTypesDerivedFrom <Discover.Mail.MailMessage>(); modelBuilder.ApplyDiscoverMappingConventionsToTypesDerivedFrom <Entity>(); modelBuilder.Entity <User>().Property("RolesString").HasColumnName("Roles"); modelBuilder.Entity <Event>().HasOptional(e => e.ApplicationConfig).WithRequired(); modelBuilder.Entity <Event>().HasMany <Event, Activity>("ActivitiesCollection").WithRequired(p => p.Event).WillCascadeOnDelete(); modelBuilder.Entity <Event>().HasMany <Event, RegisteredInterest>("RegisteredInterestsCollection").WithRequired(p => p.Event).WillCascadeOnDelete(); modelBuilder.Entity <Event>().HasMany <Event, MoodCategory>("MoodCategoriesCollection").WithRequired(p => p.Event).WillCascadeOnDelete(); modelBuilder.Entity <Event>().HasMany <Event, MoodPrompt>("MoodPromptsCollection").WithRequired(p => p.Event).WillCascadeOnDelete(); modelBuilder.Entity <Event>().HasMany <Event, Responder>("RespondersCollection").WithRequired(p => p.Event).WillCascadeOnDelete(); }