使用NuGet安装Windows Azure Storage v3.0.3失败

时间:2014-03-07 14:32:24

标签: azure nuget azure-storage nuget-package

我正在尝试更新我的程序,但是通过NuGet安装Windows Azure Storage 3.0.3.0但是当我这样做时,我得到以下内容:

Attempting to resolve dependency 'Microsoft.Data.OData (≥ 5.6.0)'.
Attempting to resolve dependency 'System.Spatial (= 5.6.1)'.
Attempting to resolve dependency 'Microsoft.Data.Edm (= 5.6.1)'.
Attempting to resolve dependency 'Newtonsoft.Json (≥ 5.0.6)'.
Attempting to resolve dependency 'Microsoft.Data.Services.Client (≥ 5.6.0)'.
Attempting to resolve dependency 'Microsoft.Data.OData (= 5.6.0)'.
Already referencing a newer version of 'Microsoft.Data.OData'.

老实说,我认为发布的软件包存在问题,因为我知道它是新的。

之前有人见过这个吗?如果是这样,你是如何解决这个问题的?

我知道我可以将OData回滚到支持的版本但是想知道是否还有其他选项?

4 个答案:

答案 0 :(得分:11)

从您的评论中看起来他们已经在您的项目中安装了大于5.6.1的Odata版本。 因此:

  • 由于在安装时生成的依赖关系图将指示Odata为5.6.0
  • 您已经在项目中安装了更高版本的Odata
  • 软件包的安装应该失败,因为我们不会在安装包或更新包期间降级任何软件包

有关如何解决此问题,请首先确保至少安装了2.8版本的NuGet。然后,您应该使用程序包管理器控制台并输入:

Update-package Microsoft.data.odata –version 5.6.0

然后:

Install-package windowsazure.storage –version 3.0.3

或者:

Update-package windowsazure.storage –version 3.0.3

取决于它是升级还是安装Windows Azure存储库。

答案 1 :(得分:9)

我通过将这些问题降级为5.6.0来修复完全相同的问题:

  • Microsoft.Data.OData
  • Microsoft.Data.Edm
  • System.Spatial

将Windows Azure存储更新到3.0.3.0后,我可以将它们重新更新为5.6.1。

我发现此命令对降级很有用:

uninstall-package <package> -force

-force将继续,无论依赖关系如何,但在这种情况下,我们将它们添加回来,以便它们应该没问题。

答案 2 :(得分:0)

Microsoft.Data.Services.Client正在寻找等于5.6.0的Microsoft.Data.OData版本。但是,根据Windows Azure Storage 3.0.3.0的依赖性,它会查找Microsoft.Data.OData版本&gt; = 5.6.0,因此安装的最新版本的Microsoft.Data.OData高于5.6.0。 因此,在安装Microsoft.Data.Services.Client时,它发现已经安装了更高版本的Microsoft.Data.OData,并且无法更新nuget包。

解决此问题的最简单方法如下:

如果您要更新Windows Azure Storage nuget软件包,请按照以下步骤操作:

  1. 使用nuget包将Microsoft.Data.OData版本更新为5.6.0 manager命令 Update-Package Microsoft.Data.OData -Version 5.6.0
  2. 将nuget包Windows Azure存储更新为3.0.3.0
  3. 如果要安装Windows Azure Storage nuget软件包,请按照以下步骤操作:

    1. 使用nuget将Microsoft.Data.OData版本安装到5.6.0 包管理器命令 Install-Package Microsoft.Data.OData -Version 5.6.0
    2. 安装nuget包Windows Azure Storage 3.0.3.0

答案 3 :(得分:0)

只需在Package Manager Console中输入以下命令即可。

PM> Install-package windowsazure.storage –version 3.0.3