MetadataException [无法加载指定的元数据资源]

时间:2011-03-14 10:32:04

标签: c# .net entity-framework

我真的需要帮助。 stackoverflow中有很多关于错误的信息。但是没有一个是有帮助的。问题描述在这个问题的底部。

  

MetadataArtifactProcessing
   - 这被设置为“嵌入输出组件”,这是正确的

     

的app.config
   - 我知道连接字符串必须在运行的配置文件中   部件。我做到了。

     

x86 / x64位我已经仔细检查了编译和框架版本   一切都应该如此   (在这种情况下,意思是.net 4和   86)。

     

res的路径://*/Something.ssdl
这可能是最容易出错的   选项。我试过找到dll路径   手动,但只是非常怪异   错误。装配未找到或无效   代码库或版本。如果我留下它   明星,它会搜索可用的   组件。但是有报道   说3层申请必须   完全匹配(带打印的装配版本等)。虽然,   如何描述非常不清楚   也不起作用。

     

资源名称使用了.NET Reflector,我找到了资源   数据类程序集中的(csdl,ssdl,msl)中的名称。那个名字正是如此   对应于配置文件。我也记得资源得到了   路径名和原始文件名(maph / maph / filename.edmx)。

     

连接字符串的名称
连接字符串的添加名称=''   与名称完全对应   被搜查。

描述
这是一个3层应用程序,其中edmx位于Name.Data.dll中。我使用内置Visual Studio 2010的Entity Poco生成器创建了POCOS。将Pocos移动到业务层(是的,我修复了移动pocos时发生的路径错误)。

当我在我的第三层控制台测试应用程序中尝试向poco索取数据时,会出现这个问题(如标题中所述)。我真的希望你明白这不是一个“只是重复”而且我真的需要通过对话来解决这个问题。

先谢谢了,

更新:
因为看起来这对应于错误的逻辑,我认为我搜索的答案更多的是“我将如何在演示中使用EF - 业务 - 数据”分层系统?

2 个答案:

答案 0 :(得分:0)

不确定这是否与您当前的异常直接相关,但显然您的项目结构存在一些问题。

如果要将EF4与POCO T4模板一起使用,则必须关闭实体设计器中的默认生成器。 POCO模板可以放在单独的项目中,但项目定义实体模型(以及可能派生的ObjectContext)必须引用此程序集。

按照这些教程介绍如何使用POCO:

答案 1 :(得分:0)

我认为App.config文件中的连接字符串不正确。你可以试试这个:

Data Source=(IP address of DB);Initial Catalog=(DB name);Integrated Security=True;MultipleActiveResultSets=True