找不到概念模式节点以嵌入为输入文件提供资源。

12

刚升级到.NET 4.5框架和Entity Framework 5.0,并在构建时遇到以下错误:

  • 无法找到概念模式节点以嵌入为“E:\ Builds \ 1 \ Mobooka v2 \ Mobooka.Services \ Sources \ Mobooka.DAL \ Tracking.edmx”的输入文件提供资源。

  • 无法找到存储模式节点以嵌入为“E:\ Builds \ 1 \ Mobooka v2 \ Mobooka.Services \ Sources \ Mobooka.DAL \ Tracking.edmx”的输入文件提供资源。

  • 无法找到映射节点以嵌入为“E:\ Builds \ 1 \ Mobooka v2 \ Mobooka.Services \ Sources \ Mobooka.DAL \ Tracking.edmx”的输入文件提供资源。

我只在谷歌上找到了大约三篇与此问题相关的帖子,但没有一个提供解决方案。任何帮助都将不胜感激。


我已经为此创建了一个问题 https://entityframework.codeplex.com/workitem/1880 - Preben Huybrechts
3个回答

8

您在使用TFS构建时遇到了这个问题吗?

如果是的话,我今天也遇到了同样的问题:

Could not find the Conceptual Schema node to embed as a resource for input file ...
Could not find the Storage Schema node to embed as a resource for input file ...
Could not find the Mapping node to embed as a resource for input file ...

我们的住户构建专家告诉我TFS构建服务器没有加载.NET 4.5。

为了解决问题,我将项目属性设置为.NET 4.0而不是.NET 4.5,重新生成我的EDMX文件/服务,并成功构建/检入。


1
我也遇到过这个问题。当你的构建服务器是32位的,而开发者电脑是64位的时候,也会出现这种情况。 - Josh
1
安装.NET 4.5后,即使目标框架为4.0,在构建服务器上也能正常工作。 - Preben Huybrechts

2

您的服务器是否安装了.NET 4.5?

在我的情况下,构建服务器上未安装.NET 4.5。尽管@Mike的回答表明您可以改为构建v4.0,但是在构建服务器上安装.NET框架4.5对我解决了这个问题。


1
".net 4.5没有安装在我们的构建服务器上,我的项目都是以.net 4为目标,我无法更新构建服务器的框架版本。在我的情况下,我通过编辑xml命名空间来降级edmx文件。"
<edmx:Edmx Version="3.0" xmlns:edmx="http://schemas.microsoft.com/ado/2009/11/edmx">

成为:
<edmx:Edmx Version="2.0" xmlns:edmx="http://schemas.microsoft.com/ado/2008/10/edmx">

并且:

xmlns="http://schemas.microsoft.com/ado/2008/09/edm"

xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation" 

成为:
xmlns="http://schemas.microsoft.com/ado/2009/11/edm" annotation:UseStrongSpatialTypes="false"

xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation"

命名空间是从2008/09到2009/11改变的吗?还是反过来? - user2864740

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接