安装Breeze Server for Web API 2.0时出现以下错误。
将“Microsoft.AspNet.WebApi.Core 5.2.0”更新为 'Microsoft.AspNet.WebApi.Core 5.1.0'失败了。无法找到版本 兼容的'Microsoft.AspNet.WebApi.WebHost' 'Microsoft.AspNet.WebApi.Core 5.1.0'。
感谢任何帮助。
答案 0 :(得分:2)
在安装Microsoft.AspNet.WebApi.WebHost之前,必须安装Breeze.Server.WebApi2。
*编辑*
这个NuGet版本问题已在Breeze v1.4.17中修复(即对于当前的Microsoft.AspNet ... NuGet包)
*编辑*
问题不在于Breeze.Server.WebApi2,而在于Microsoft.AspNet.WebApi.OData包。 Breeze.Server.WebApi2 NuGet包需要版本≥5.1&&的Microsoft.AspNet.WebApi.OData。 < 6.0。 如果您安装了Breeze.Server.WebApi2并且尚未安装Microsoft.AspNet.WebApi.OData,它将安装基本版本(5.1)而不是最新版本。 问题是Microsoft.AspNet.WebApi.OData 5.1依赖于Microsoft.AspNet.WebApi.Core版本≥5.1.0&& < 5.2.0。 这与Microsoft.AspNet.WebApi.WebHost 5.2(您已在解决方案中安装)冲突,因为它依赖于Microsoft.AspNet.WebApi.Core版本> = 5.2和< 5.3。 因此,当尝试安装Microsoft.AspNet.WebApi.OData时,它将尝试将Microsoft.AspNet.WebApi.Core版本推送到5.1,这将失败,因为Microsoft.AspNet.WebApi.WebHost依赖于较新的版本。 / p>
所有这一切都发生了,因为Breezejs 1.4.16使用Microsoft.AspNet.WebApi 5.1进行了测试,因为当时尚未发布5.2版本。 我们将在即将发布的版本中更新我们的NuGet包的版本依赖性,但是这个问题仍然意味着将来再次出现,因为我们无法控制Microsoft如何在即将发布的版本中设置其包依赖关系。
之前的解决方法是过度工作,因为您可以在安装Breeze.Server.WebApi2之前安装最新的Microsoft.AspNet.WebApi.OData包(5.2)。 Microsoft.AspNet.WebApi.OData 5.2将实现Breeze.Server.WebApi2依赖,您将不会遇到安装错误或处理卸载/安装一堆软件包的麻烦。
答案 1 :(得分:2)
我在Visual Studio 2013 Update 3中遇到了类似的问题。
首先安装Microsoft.AspNet.WebApi.OData,然后通过NuGet安装Breeze.Server.WebApi2
这个问题没有出现。现在让我们把它作为一个快速解决方案。