我有一个使用Entity Framework 4.3.1和自我跟踪实体的ASP.NET 4.0 Web应用程序。它工作正常,直到我添加另一个ADO.NET实体数据模型(.edmx)文件。之后,项目编译时没有任何错误,但只要它调用自跟踪实体对象,应用程序就会生成System.InvalidOperationException:无法找到EntityType'namename.classname'的映射和元数据信息。
我尝试将第二个ADO.NET实体数据模型添加到不同的命名空间中 - 但这没有用。 如果我从项目中删除添加的.edmx文件,问题就会消失。 如果我删除自跟踪实体文件(Model.tt和Model.Context.tt),问题就会消失。
当实体数据模型不止时,自我跟踪实体似乎无法正常运行。
还有其他人经历过并解决了这个问题吗?
答案 0 :(得分:1)
确保在整个解决方案中使用一致的上下文生成。
在每个实体数据模型上使用EF 5.x DbContext Generator。您可以通过ExtensionManager(搜索EF 5.x)或here
下载模板答案 1 :(得分:0)
我认为从4.1(DbContext)开始不支持自我跟踪实体。 我们在使用ste从4升级到4.2时遇到了一些问题,我们最终重新使用DbContext并摆脱了ste。从那以后它就像一个魅力!