FluentMigrator回滚无效

时间:2016-09-07 19:30:41

标签: entity-framework fluent-migrator

我已经看到了相关问题。 FluentMigrator Failed Migrations Don't Rollback?Rollback to a specfic Migration in FluentMigrator。但不幸的是,我无法通过此解决方案解决我的回滚问题。我正在使用FluentMigrator来版本化数据库。

我的迁移代码:

using FluentMigrator;

namespace WebCruiter.Candidate.DBMigration.Migrations.R2016_6
{
    [Migration(20160908000908, "USERSTORY")]
    public class Migration20160908000908 : AutoReversingMigration
    {
        public override void Up()
        {
            Create.Column("TestUrl").OnTable("JobApplication").AsString(500).Nullable();
        }
    }
}

我尝试从命令行回滚此版本(20160908000908):

migrate.exe -c "server=(LocalDB)\MSSQLLocalDB;Initial Catalog=Candidate;Integrated Security=True" -db sqlserver2014 -a ".\..\..\..\WebCruiter.Candidate.DBMigration\bin\Debug\FluentMigrator.dll" -t rollback:20160908000908

JobApplication 没有回滚列 TestUrl ,它显示:

enter image description here

有人可以帮我解决我犯错的地方吗?

1 个答案:

答案 0 :(得分:1)

因为您需要在要回滚的迁移之前向运行者提供迁移的数量。所以说你有迁移1,2和3.你要回滚3,你会给跑步者 2

目前你给跑步者的不是那个,请在'20160908000908'之前进行迁移。

这基本上是Rollback to a specfic Migration in FluentMigrator中编写的内容,您编写了最后一个迁移的数量,而不是要回滚的迁移数量。