我有这种情况。我以这种方式在项目上实现了Code First Migrations
我将AutomaticMigrationsEnabled设置为true并创建了我的数据库。
2位开发人员得到了我的代码,一切正常。
我后来修改了我的模型并将AutomaticMigrationsEnabled设置为false,并使用Add-Migration,Update-Database来应用此更改。
这些同事开发人员对代码进行了更新,一切正常。
第三个开发人员获得了最新的代码(第一次)并且正确地为他创建了数据库(步骤3中的更改)并且一切正常......直到...检查出来。 ..他将OutputCache属性添加到控制器中的action方法。他从未改变模型。他从未做过任何其他事情,他只是添加了这个属性。当他这样做时,他得到了这个错误。
'无法更新数据库以匹配当前模型,因为那里 正在等待更改并禁用自动迁移。要么写 挂起的模型更改为基于代码的迁移或启用 自动迁移。组 DbMigrationsConfiguration.AutomaticMigrationsEnabled为true以启用 自动迁移。'。
他没有更改数据库。他没有做任何模特改变。他刚刚添加了这个属性。现在,当他删除这个属性时,它仍会给出相同的错误。
我们已经尝试了一切。
a)删除了数据库
b)将AutomaticMigrationsEnabled设置为true
c)运行Update-Database
d)运行Add-Migration,Update-Database
什么都没有用。无论是否有OutputCache更改,他仍然会出现此错误(我认为与此无关)。
我使用AutomaticMigrationsEnabled或我遵循的步骤有什么问题吗? AutomaticMigrationsEnabled应该在应用程序的生命周期内不会改变吗?
感到沮丧和困惑。
萨钦