https://www.cnblogs.com/godbell/p/7384940.html
Database.SetInitializer<TContext>(new NullDatabaseInitializer<TContext>()); Database.SetInitializer<TContext>(null);
NullDatabaseInitializer<TContext>使用此初始值设定项将禁用给定上下文类型的数据库初始化,等同与传递null,所以上面两种写法等同。
Database.SetInitializer<TContext>(new MigrateDatabaseToLatestVersion<TContext, TMigrationsConfiguration>());
初始化 MigrateDatabaseToLatestVersion 类的新实例,该类指定是否使用触发初始化的上下文中的连接信息来执行迁移。 也允许指定在初始化期间要使用的迁移配置。
Database.SetInitializer<TContext>(new DropCreateDatabaseAlways<TContext>());
IDatabaseInitializer 的实现,它总是会在首次在应用程序域中使用上下文时,重新创建数据库并可以选择重新设置数据库的种子。 若要设置数据库的种子,请创建一个派生类并重写 Seed 方法。
Database.SetInitializer<TContext>(new DropCreateDatabaseIfModelChanges<TContext>());
IDatabaseInitializer 的实现,它仅在模型自数据库创建后发生更改时删除数据库、重新创建数据库并选择重新设置数据库的种子。