1

我无计可施,试图解决这个问题。

我有一个使用 4 个实体框架模型的非常大的 MVC 项目。这些模型被编译成一个单独的程序集/类库类型项目。

直到几天前,一切正常。我请了两天假,有人调整了模型,他被称为重病。

当我今天回来时,我注意到该应用程序无法启动。它向您显示黄屏死机,并显示以下异常消息:

System.InvalidOperationException: Mapping and metadata information could 
not be found for EntityType 'MyNamespace.MyClassName'

我查看了几篇文章(http://blogs.infosupport.com/mapping-and-metadata-information-could-not-be-found-for-entitytype-schema-klant/,http://matheusandcode.wordpress 。 com/2011/11/13/mapping-and-metadata-information-could-not-be-found-for-entitytype/)以及来自这里的问题和答案,他们都建议我交叉检查拼写错误或缺少属性POCO 和模型生成的实体。

我有大约 400 多个实体。但是,我在创建实体集时检查了它引发异常的实体,并且绝对没有拼写不匹配。我已经花了 5 个多小时来检查这个,我很累也很沮丧。

关于此错误的可能原因,任何人都有其他线索吗?

我已经使用 Table Mappings 窗口、模型浏览器甚至 SQL Server Management Studio 清理、重建、检查拼写错误、缺少属性、交叉检查概念模型和存储模型之间的奇偶校验,我已经打印出来并标记了纸上的每个属性都与 POCO 中的属性相对,我已经冲洗并重复了几次,但错误不会消失。

我正在使用 Visual Studio 2010、EF 5、MVC 4 和实体框架 POCO 生成器包。

4

1 回答 1

2

For the benefit of the weary wayfarer.

In our case, we spotted the error to the following cause:

A developer had added an extra EDMX that did not use the EF POCO generator. In fact, the new model had no tables either. It just used a stored procedure.

He removed it and the error went away. We'll probably call the stored proc using vanilla ADO.NET instead of adding a new Entity Framework model for it.

于 2013-04-16T10:02:01.617 回答