ASP MVC,EF代码首先无法加载指定的元数据资源(没有edmx)

时间:2017-11-17 13:28:05

标签: asp.net asp.net-mvc entity-framework edmx

运行我的网站时出现以下错误:

  

无法加载指定的元数据资源。

这是我的连接字符串:

 <add name="Context" connectionString="metadata=res://*/database.csdl|res://*/database.ssdl|res://*/database.msl;provider=System.Data.SqlClient;provider connection string=&quot;Server=127.0.0.1,2014;Database=myDbName;User Id=sa;Password=myPassword;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />

在我寻找解决方案后,我发现一些答案并不能帮助我解决这个问题,因为他们说我应该在.edmx文件上应用一些更改,但我没有任何答案我的项目中的.edmx文件。

我的项目是代码优先的,据我所知,代码优先的项目没有任何.edmx文件。

我也检查服务器上的相关防火墙端口,没关系。

以下是一些我无法使用它们来解决此问题的解决方案:

entity framework Unable to load the specified metadata resource [duplicate]

MetadataException Unable to load the specified metadata resource

Unable to load the specified metadata resource. Scripts != Models

System.Data.MetadataException: Unable to load the specified metadata resource

我使用VS17,EF 6.2,这是我的解决方案结构:

-- myPrj.web
-- myPrj.Model
-- myPrj.Repository
-- myPrj.Service

1 个答案:

答案 0 :(得分:1)

您的连接字符串用于数据库第一个上下文。首先,对于代码,您应该使用更简单的版本,该版本仅包含连接到数据库的信息(动态创建元数据)。对于您的情况,请尝试:

<add name="Context" connectionString="Server=127.0.0.1,2014;Database=myDbName;User Id=sa;Password=myPassword;multipleactiveresultsets=True;application name=EntityFramework" providerName="System.Data.SqlClient" />