【发布时间】:2014-06-09 10:24:17
【问题描述】:
我用我的 MVC 应用程序让自己陷入了一个奇怪的土拨鼠日场景。
除非我每次调试应用程序时都应用我的解决方法(在这个问题的后面):
支持“UsersContext”上下文的模型自 数据库已创建。考虑使用 Code First 迁移来更新 数据库 (http://go.microsoft.com/fwlink/?LinkId=238269)。
我没有更改模型。
我的解决方法工作流程是:
- Add-Migration WHATEVERNAME(进行空白迁移)
- 删除此迁移。
- 运行:更新数据库
- 重新编译并运行(现在没有错误)
注意事项:
- 脚本和数据库中最新迁移的 __MigrationHistory 哈希匹配。
- 我将 MVC 应用程序和 EF 项目作为单独的项目。
- 我已尝试创建 -IgnoreChanges 迁移,以查看应用此迁移是否会缓解问题。它没有。
这很令人沮丧,我将如何永久解决这个问题?
注意:自动迁移不适合我的场景。
【问题讨论】:
-
您能否提供更多关于它如何呈现的信息?因此,一旦您完成了步骤 1-4 并运行了该应用程序,它就可以正常工作了……然后,如果您停止并重新启动该应用程序,它会再次出错吗?还是只有重新编译并重新启动?
-
@demoncodemonkey 一旦停止并重新启动,问题就会再次出现。我会在问题中澄清这一点。
-
您是否对迁移做了一些奇怪的事情?你能说明你是怎么打电话给
Database.SetInitializer的吗? -
感谢@demoncodemonkey。我不调用 Database.SetInitializer,所以无论约定默认是什么。上下文更新后,第一次选择时的应用程序异常。
标签: asp.net-mvc entity-framework asp.net-mvc-4 entity-framework-6 entity-framework-migrations