Nuget Breeze Server for Web API 2.0安装错误

时间:2014-08-03 19:05:24

标签: breeze breeze-sharp

安装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'。

感谢任何帮助。

2 个答案:

答案 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

这个问题没有出现。现在让我们把它作为一个快速解决方案。