我正在尝试更新构建服务器上的数据库,但它失败了,因为它正在尝试运行自动迁移,即使它们已被禁用。数据库已经存在,我只需要应用最新的迁移。这是我的背景:
public sealed class Configuration : DbMigrationsConfiguration<CableSenseInstanceConfiguratorContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;
}
}
我有一堆手动创建的迁移文件,这是最新的:
public partial class Settings : DbMigration
{
public override void Up()
{
AddColumn("dbo.MasterInstances", "Settings", c => c.String());
}
public override void Down()
{
DropColumn("dbo.MasterInstances", "Settings");
}
}
如果然后我从包管理器控制台手动更新数据库,我会看到它尝试运行自动迁移(由于表已经存在而失败):
Applying code-based migrations: [201204200805145_NoMoreCerts, 201210311451543_SuperUsers, 201301041036414_Settings, 201301041128583_Settings2].
Applying code-based migration: 201204200805145_NoMoreCerts.
Applying automatic migration: 201204200805145_NoMoreCerts_AutomaticMigration.
我的 __MigrationHistory 表只有一个用于初始创建的条目。如何阻止它进行自动迁移?