asp.net-mvc - 使用 EF 上传到 azure 后出现问题无法加载指定的元数据资源错误

标签 asp.net-mvc entity-framework azure razor poco

我正在使用 ASP.net MVC5 应用程序和 EF 5 模型优先方法。但也使用了 poco 类,它位于另一个名为“Entity”的 C# 项目中。

我有多层架构,其中 Edmx 文件位于 DAL 层,BAL 引用它,BAL 和实体项目在主 Web 项目中引用。

一切正常,但在 Azure 上设置数据库和项目后,当我的网站尝试连接数据库时,它会抛出以下错误“MetadataException:无法加载指定的元数据资源”

我被一个问题困扰了两天,并尝试了 stackoverflow 或任何其他博客中给出的所有可能的解决方案。但相信我,没有什么比在元数据中提供程序集、dll 的完整路径更能解决我的问题了。使用“metadata=res://*/; 也对我不起作用。我在这里压力很大。

请帮助我。 附上 web.config 中的屏幕截图和连接字符串。

<add name="questmysqlEntities" connectionString="metadata=res://QuestCloud/QuestCloudDAL/QuestCloud.csdl|res://QuestCloud/QuestCloudDAL/QuestCloud.ssdl|res://QuestCloud/QuestCloudDAL/QuestCloud.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source******servername****;Initial Catalog=questdb;Persist Security Info=True;user id=****username****;password=****password****;MultipleActiveResultSets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我的 Edmx 文件驻留在 DAL(数据库层)项目中,POCO 模板驻留在实体项目中,

enter image description here

BAL(业务层)有两个项目的引用

enter image description here

我的Web项目引用了BAL(业务层)和实体项目

enter image description here

最佳答案

我得到了上述问题的解决方案。我刚刚将“QuestCloudDAL.dll”的引用添加到我的主项目QuestCloud中。并将该程序集的引用放入我的主 web.config 中,

 <add name="questmysqlEntities" connectionString="metadata=res://QuestCloudDAL/QuestCloud.csdl|res://QuestCloudDAL/QuestCloud.ssdl|res://QuestCloudDAL/QuestCloud.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source******servername****;Initial Catalog=questdb;Persist Security Info=True;user id=****username****;password=****password****;MultipleActiveResultSets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我在 we.config 连接字符串中放置了元数据资源的“QuestCloudDAL”命名空间,而不是“*”。它按预期工作。

关于asp.net-mvc - 使用 EF 上传到 azure 后出现问题无法加载指定的元数据资源错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29797153/

相关文章:

c# - Asp.net Identity 在没有 HttpContext 的情况下创建用户

c# - 带有 2 个表的 WPF TreeView(分层数据模板)

azure - 如何在 terraform 中为 SQL DB 创建警报规则

sql-server - 如何检索日志以调查 Azure SQL Server 中删除的数据库用户?

asp.net-mvc - MVC 4. IIS 7.5 PUT 返回 405

javascript - 将 View 模型数据传递给 javascript - 意外 token 非法

c# - ASP.NET MVC如何从应用程序中删除ViewState?

c# - Entity Framework - 引用未加载

entity-framework - Entity Framework 4 支持批量插入吗?

python - 在 Azure AD 中创建用户需要哪些应用程序权限?