实体框架6错误无法加载指定的元数据资源

rar*_*bar 17 c# entity entity-framework entity-framework-4 entity-framework-5

我在我的解决方案中使用Entity Framework 6和"模型优先",我将"数据模型"类分离到另一个项目中,这样我就可以添加对"数据模型"类的引用,而不会暴露我的"数据模型上下文"和连接.我不想将我的实体数据模型项目(尤其是数据库上下文等)暴露给我的UI层.我有这个:

在此输入图像描述

我现在已经成功地将我的自动生成的实体类与我的数据模型分开了,我尝试通过在项目Mapeo.BusinessEntity中更新实体或属性来实现它.

这是我在DatabaseLayer(Mapeo.DatabaseModel)中的连接字符串

<connectionStrings>
   <add name="MapeoModelContainer" connectionString="metadata=res://*/MapeoModel.csdl|res://*/MapeoModel.ssdl|res://*/MapeoModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=raranibar\ral;initial catalog=Mapeo;user id=sa;password=*****;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

在我的服务层中,我将此连接字符串复制到App.config,我的问题是当我想要添加数据时,我有此消息:无法加载指定的元数据资源如何解决此问题?

在此输入图像描述

更新 我找到了解决方案,我更改了App.Config中的连接字符串我在连接strign"*"中替换了我的情况下的DataModel目录(Mapeo.DatabaseModel)中的pretentation层现在这是我在图层演示中的连接字符串:

  <connectionStrings>
     <add name="MapeoModelContainer" connectionString="metadata=res://Mapeo.DatabaseModel/MapeoModel.csdl|res://Mapeo.DatabaseModel/MapeoModel.ssdl|res://Mapeo.DatabaseModel/MapeoModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=raranibar\ral;initial catalog=Mapeo;user id=sa;password=scugua;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>
Run Code Online (Sandbox Code Playgroud)

小智 4

如果您在加载元数据文件时遇到此类问题,请使用正确的路径更新您的连接字符串。愿它能帮助别人...

connectionString="metadata=res://DatabaseModel/MyModel...
Run Code Online (Sandbox Code Playgroud)