我有一个使用 Entity Framework V6.1.1 的 MVC 5 网站。 Entity Framework DbContext 类和模型最初都在网站项目中。这个项目有 3 个 DbContext 类和 3 个数据库。我还启用了迁移并应用了这些数据库之一。
我现在已经将所有 Entity Framework 类(包括模型和迁移)移动到一个单独的项目,从那时起,我在应用迁移的数据库中收到以下错误:
The model backing the 'MyContext' context has changed since the database was created.
数据库没有改变。我还确保配置构造函数和数据库 __MigrationHistory 表中的上下文键相同。
我也看到了以下行为:
- 我在程序包管理器控制台中执行了 Get-Migrations,并返回了正确的迁移。然后我就可以构建和运行该站点,并且在我下次进行更改并构建解决方案之前不会显示任何错误消息。
- 如果我在配置构造函数的任一数据库中更改上下文键,则没有错误,但我假设迁移并未全部被提取。
我也一直在查看所有迁移文件,包括设计器文件和 namespace ,它们都匹配。如果有人能阐明这个问题,我们将不胜感激。
最佳答案
你应该把它放在'MyContext'的构造函数中
> Database.SetInitializer<YourDbContext>(null);
关于c# - 无法识别 Entity Framework 更 retrofit 配模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33348709/