update-database
指定“-Verbose”标志以查看应用于目标数据库的 SQL 语句。
正在应用显式迁移: [201409180500514_yu3]。
正在应用显式迁移: 201409180500514_yu3。
无法将数据库更新为与当前模型匹配,因为存在挂起的更改并且禁用了自动迁移。将挂起的模型更改写入基于代码的迁移或启用自动迁移。将 DbMigrationsConfiguration.AutomaticMigrationsEnabled 设置为 true 以启用自动迁移。
您可使用 Add-Migration 命令将挂起的模型更改写入基于代码的迁移。
- 挂起的更改,指Model层有变化;
- 禁用了自动迁移,指Migrations\Configuration.cs中设置了:
public Configuration()
{
AutomaticMigrationsEnabled = false;
}
二者不可同时满足,否则,update-database报上面的异常.以上属于自动更新.
令一个解决方法是使用非自动更新:
执行命令:Add-Migration [migration name]
然后再执行:update-databse
使用 update-database -TargetMigration [migration name1]-SourceMigration [migration name2]
可以在不同版本间自由切换。