EF Core 2.0工具奇怪的行为

时间:2017-09-20 14:27:59

标签: entity-framework-core .net-core-2.0

我正在使用EF Core 2.0和Microsoft.EntityFrameworkCore.Tools 2.0.0软件包。我将迁移A和B应用于数据库,我希望迁移B从项目中完全回滚和删除。 要回滚迁移B,请在包管理器控制台

中执行此命令
 Update-Database -Migration A

在此命令的结果中,将回滚B迁移。这很好。 但是当我执行

Remove-Migration

我收到此错误

   The migration 'B' has already been applied to the database. Revert it and try again. If the migration has been applied to other databases, consider reverting its changes using a new migration.

这很奇怪,因为我只是使用update database命令显式回滚它。

看来当我执行remove migration命令时,这实际上触发了Startup.Configure()方法,在这个方法中我做了我的

dbContext.Seed();

在我的种子方法中我有

context.Database.Migrate();

这就是我再次应用我的回滚迁移的原因。

所以,我的问题是为什么EF Core 2.0 Tools会触发Startup.Configure()方法,因为EF Core 1.1没有这样做?

0 个答案:

没有答案