Code First Entity Framework 6重建项目触发上下文更改

时间:2014-07-17 11:02:49

标签: c# entity-framework ef-code-first ef-migrations

我已经设置了一个包含许多项目的解决方案,其中一个用于我的模型,一个用于数据库上下文(以及相关的迁移)。我有两个上下文 - 一个用于我的标准数据库(ContextA),另一个用于ASP.NET标识表(ContextB)。 (我无法弄清楚如何将这些内容合并到我现有的上下文中,但它们都指向相同的数据库)。

每次我在我的解决方案中重建任何项目时,都会得到错误"模型支持' ContextA'自创建数据库以来,上下文已经发生了变化",我必须为EITHER上下文做一个更新数据库才能继续。

我发现我根本不需要进行添加迁移(对于任何一个上下文都会导致空的Up()和Down()方法)。

任何人都可以告诉我什么会触发模型发生变化的上下文?

我应该考虑只将Update-Database添加到构建脚本吗?

1 个答案:

答案 0 :(得分:0)

数据库中的migrationhistory表通常与一个上下文相关联,然后与您的模型进行比较以使所有内容保持同步。我明白为什么你会得到这种奇怪的行为。每个应用程序实例有两个上下文,但我也有两个数据库。

我建议你合并你的上下文和模型,或者将它们分成不同的数据库(这在你的应用程序设计中是有意义的)。这将解决您的问题。