2

有没有关于实体框架4和Visual Studio 2012的技巧/解决方法/已知的“疑难杂症”?VS 2012中的实体框架构建问题.NET 4.5

我有一个项目,可以在我的Windows 7,VS 2010,.NET 4框中完美地编译和编译。整个周末我安装了一台新的机器,包括Windows 8 Enterprise RTM和VS 2012 Ultimate RTM。 EF设计开箱即用,采用ObjectContext方法(EF 4.1之前)。

我从源代码控制中检索到了工作解决方案,完成了转换过程,并在VS2012中成功构建了针对.NET 4框架的解决方案。

但是,当我运行应用程序或进行调试时,我从第一个EF调用中收到“无法加载元数据资源”。洙..

第1步:工作EF错误

好了,所以我用dotPeek看到大会,果然建在VS2012的时候,的EDMX元数据文件不在大会。

步骤2:工作缺少资源问题

  • 我设置的元数据处理为“复制到输出”,然后回到“嵌入”给力。不。
  • 我查看了4.5版的MSBUILD文件,看看EntityDeploy目标是否看起来损坏。不。
  • 我在VS 2012上做了一次全面修复,看看是否有东西搞砸了。不。
  • 将MSBUILD VS版本设置为“11.0”以避免csproj中的2010兼容性检查。不。

第3步:删除模型,尝试再次使用VS 2012点的默认

好吧,我想我只是想不出使这项工作。于是我删除了这个模型,并在VS 2012中使用了NuGet的EF 5.0,并使用DbContext方法进行了重构。把所有这一切排成一行,修正了一些语法问题b/t EF 4.0和5.0,并且我们正在构建。

仍然得到同样的错误,仍然没有资源.DLL

我的一个collegue可以建立这个成功的VS 2012,但在Windows 7上的w/o .NET 4.5安装。

.NET 4.5或MSBUILD 4.5中是否存在错误或已知问题?总得想念一些简单的事情。

+0

我对你对这个问题如此冷静表示赞赏。我有同样的愚蠢的问题,除了删除edmx文件并重新开始之外没有任何工作。 –

回答

3

想通了。我在这个项目中没有.resources文件,它看起来像.NET 4.5中的CoreCompile没有嵌入任何EF资源文件。

试图研究这是预期的或新的行为。

+0

感谢您发布您对此问题的回答。我经历了从Win7/VS2010到Win8/VS2012的相同事情。我添加了一个资源文件(.resx)到我的类库项目的根目录,一切开始运作! – HBCondo