Erw*_*ijk 4 c# windows-services console-application entity-framework-4 asp.net-mvc-3
我在多个应用程序中使用相同的模型:MVC3 Web应用程序,Windows服务和控制台应用程序.当我启动MVC3 Web应用程序时,它会生成数据库.我可以重新启动它,一切都很好.但是当我启动控制台应用程序时,我收到一个错误:
自创建数据库以来,支持'... Context'上下文的模型已更改.请考虑使用"代码优先迁移"来更新数据库(http://go.microsoft.com/fwlink/?LinkId=238269).
当我删除数据库,启动控制台应用程序,我可以重新启动它,一切都很好.当我启动MVC Web应用程序时.崩溃:模特支持...等
在EF4.1中删除EdmMeta表'解决'了这个问题.但由于EF4.3不再有这样的表,我不能这样修复它.我已经检查过所有应用都引用了相同型号的dll.我已经仔细检查过所有项目都引用了EF4.3,这不是问题的原因.
任何建设性的帮助将不胜感激.
此致,Erwin van Dijk.
Lad*_*nka 12
您不应该让多个应用程序创建数据库 - 这可能导致意外删除您的数据库.只需选择一个负责数据库创建和其他所有用途:
Database.SetInitializer<YourContext>(null);
Run Code Online (Sandbox Code Playgroud)
同时将此添加到您OnModelCreating
的派生中DbContext
:
modelBuilder.Conventions.Remove<IncludeMetadataConvention>();
Run Code Online (Sandbox Code Playgroud)
这应该避免哈希计算的问题.
更多关于存在哈希计算问题的原因在此处描述.