EF Code First迁移奇怪的行为

时间:2012-11-07 09:30:55

标签: entity-framework-5 ef-migrations

我有这种情况。我以这种方式在项目上实现了Code First Migrations

  1. 我将AutomaticMigrationsEnabled设置为true并创建了我的数据库。

  2. 2位开发人员得到了我的代码,一切正常。

  3. 我后来修改了我的模型并将AutomaticMigrationsEnabled设置为false,并使用Add-Migration,Update-Database来应用此更改。

  4. 这些同事开发人员对代码进行了更新,一切正常。

  5. 第三个开发人员获得了最新的代码(第一次)并且正确地为他创建了数据库(步骤3中的更改)并且一切正常......直到...检查出来。 ..他将OutputCache属性添加到控制器中的action方法。他从未改变模型。他从未做过任何其他事情,他只是添加了这个属性。当他这样做时,他得到了这个错误。

  6.   

    '无法更新数据库以匹配当前模型,因为那里   正在等待更改并禁用自动迁移。要么写   挂起的模型更改为基于代码的迁移或启用   自动迁移。组   DbMigrationsConfiguration.AutomaticMigrationsEnabled为true以启用   自动迁移。'。

    他没有更改数据库。他没有做任何模特改变。他刚刚添加了这个属性。现在,当他删除这个属性时,它仍会给出相同的错误。

    我们已经尝试了一切。

    a)删除了数据库

    b)将AutomaticMigrationsEnabled设置为true

    c)运行Update-Database

    d)运行Add-Migration,Update-Database

    什么都没有用。无论是否有OutputCache更改,他仍然会出现此错误(我认为与此无关)。

    我使用AutomaticMigrationsEnabled或我遵循的步骤有什么问题吗? AutomaticMigrationsEnabled应该在应用程序的生命周期内不会改变吗?

    感到沮丧和困惑。

    萨钦

0 个答案:

没有答案