首页 > 代码库 > EntityFramework update-base 执行异常及解决方法

EntityFramework update-base 执行异常及解决方法

 update-database

指定“-Verbose”标志以查看应用于目标数据库的 SQL 语句。

正在应用显式迁移: [201409180500514_yu3]。

正在应用显式迁移: 201409180500514_yu3。

无法将数据库更新为与当前模型匹配,因为存在挂起的更改并且禁用了自动迁移。将挂起的模型更改写入基于代码的迁移或启用自动迁移。将 DbMigrationsConfiguration.AutomaticMigrationsEnabled 设置为 true 以启用自动迁移。

您可使用 Add-Migration 命令将挂起的模型更改写入基于代码的迁移。

 

  1. 挂起的更改,指Model层有变化;
  1. 禁用了自动迁移,指Migrations\Configuration.cs中设置了:

 public Configuration()

 {

     AutomaticMigrationsEnabled = false;

  }

二者不可同时满足,否则,update-database报上面的异常.以上属于自动更新.

令一个解决方法是使用非自动更新:

执行命令:Add-Migration [migration name]

然后再执行:update-databse 

 

使用 update-database -TargetMigration [migration name1]-SourceMigration [migration name2]

可以在不同版本间自由切换。

EntityFramework update-base 执行异常及解决方法