要使部署成为一键式处理,我使用以下代码:
public class MyDBContext : DbContext
{
public MyDBContext()
: base("MyDBContext")
{
Database.SetInitializer<MyDBContext>(new MigrateDatabaseToLatestVersion<MyDBContext, Configuration>());
}
public DbSet..
}
public class Configuration : DbMigrationsConfiguration<MyDBContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = true;
AutomaticMigrationDataLossAllowed = true;
}
}
我可能会在将来添加种子方法。
就性能而言,在Application_Start上调用此初始化程序或者EF是否足够聪明以便知道没有任何更改会更好吗?
除了失去查看迁移的能力以及可能的性能问题之外,这是一个坏主意吗?