在天蓝色移动服务中冲突的System.Web.Http.Cors程序集

时间:2014-09-21 00:05:37

标签: c# azure asp.net-web-api azure-mobile-services

突然发布到Azure移动服务时出现以下错误。

"错误发现同一个依赖程序集的不同版本之间存在冲突,System.Web.Http.Cors':5.1.0.0,5.2.2.0。请将您的项目更改为仅使用一个版本。 App.Hosting 2014-09-20 23:40:26"

我使用Microsoft.AspNet.WebApi.Cors和WindowsAzure.MobileServices.Backend(1.0.348)。

我试过浏览所有引用,但是我找不到任何指向5.2.2.0的内容。 我也尝试过升级到5.2.2.0但是这样做的时候我得到: "错误引导捆绑失败:执行' WebApiConfig.Register'导致异常:'无法加载文件或程序集System.Web.Http.Cors,Version = 5.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。系统找不到指定的文件。'。 App.Hosting 2014-09-20 23:06:20"

我无法理解为什么我会收到这个错误,似乎没有明显的理由开始发生。

赞赏任何指针。

1 个答案:

答案 0 :(得分:0)

我们正在更新到新发布的ASP.NET Web API 5.2,看起来我们错过了CORS程序集的程序集重定向。

在几天内,您将能够使用完整的ASP.NET Web API 5.2,但升级必须先完成。要解决您现在的问题,您应该只需删除自己的CORS程序集(假设您只设置原点),然后使用本地web.config中的MS_CrossDomainOrigins应用程序设置进行设置,如本博客[1]中所述,例如:

<add key="MS_CrossDomainOrigins" value="http://testhost, http://sample" />

很抱歉给您带来不便!

的Henrik

[1] http://azure.microsoft.com/blog/2014/07/28/azure-mobile-services-net-updates/