System.InvalidOperationException:无法找到EntityType的映射和元数​​据信息

时间:2012-03-15 01:29:26

标签: asp.net entity-framework ado.net-entity-data-model self-tracking-entities

我有一个使用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),问题就会消失。

当实体数据模型不止时,自我跟踪实体似乎无法正常运行。

还有其他人经历过并解决了这个问题吗?

2 个答案:

答案 0 :(得分:1)

确保在整个解决方案中使用一致的上下文生成。

在每个实体数据模型上使用EF 5.x DbContext Generator。您可以通过ExtensionManager(搜索EF 5.x)或here

下载模板

答案 1 :(得分:0)

我认为从4.1(DbContext)开始不支持自我跟踪实体。 我们在使用ste从4升级到4.2时遇到了一些问题,我们最终重新使用DbContext并摆脱了ste。从那以后它就像一个魅力!