ASP MVC,EF Code first无法加载指定的元数据资源(没有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文件。

我还检查了服务器上的相关防火墙端口,一切正常。

以下是一些我无法使用的解决方案来解决这个问题:

实体框架无法加载指定的元数据资源[重复]

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

无法加载指定的元数据资源。脚本!=型号

System.Data.MetadataException:无法加载指定的元数据资源

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

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

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

<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" />

最新更新