0

使用 EF 迁移我希望针对环境自动运行迁移。我知道我可以通过对 Update-Database 的 powershell 调用来做到这一点,但是有没有办法通过框架来做到这一点而无需启动外部进程?

4

1 回答 1

1

是的,在您的 DbContext 中:

public static void SetInitializer()
{
    Database.SetInitializer(new MigrateDatabaseToLatestVersion<DataContext, Configuration>());
}

配置在哪里:

internal sealed class Configuration : DbMigrationsConfiguration<DataContext>
{
    public Configuration()
    {
        AutomaticMigrationsEnabled = true;
    }
}

您仍然需要为迁移发布一个迁移文件,该文件将进行导致数据丢失的更改(除非您在配置类中将 AutomaticMigrationDataLossAllowed 设置为 true - 危险!)但是您可以使用 PMC 中的 Add-Migration 命令创建这些文件.

于 2012-06-07T14:32:03.973 回答