如何在 Visual Studio 2013 中使用 NuGet 3.0?

How to use NuGet 3.0 with Visual Studio 2013?

我有一个混合环境,其中一些开发人员正在开发 Visual Studio 2013,而其他开发人员正在开发 2015。在我们从 Visual Studio 2015 更新引用的 NuGet 包之前一切正常。

现在,当尝试从 Visual Studio 2013 恢复 NuGet 包时,我看到以下错误:

NuGet Package restore failed for project Foo: The 'System.Linq 4.0.0' package requires NuGet client version '3.0' or above, but the current NuGet version is '2.8.60723.765'..

显然,Visual Studio 2013 没有 NuGet 版本 3.x。

是否有继续使用 Visual Studio 2013 和 2015 的解决方案?

唉,一个拿不定主意使用什么工具的团队,可能会出什么问题?好吧这个。另一个相当棘手的问题是,该程序包适用于以 CoreCLR 和 Win10 风格的通用应用程序为目标的项目。您不能在 VS2013 上创建或构建这样的项目。因此,尝试解决 Nuget 版本问题不会给您带来任何好处。

你们需要聚在一起,敲定你们要从事的项目。如果 CoreCLR 是每个人都想做的,并且问为什么,那么每个人必须更新到 VS2015。

正如 Hans Passant 在他的回复中指出的那样,仅针对 vanilla .NET 4.5 框架的项目不需要 NuGet 3.0(这就是 Visual Studio 2013 在我们的案例中的目标) .

这是添加了一个更新的 NuGet 包,特别是 System.Collections.Immutable 1.1.37,它引入了对 .NETPlatform,Version=v5.0 的依赖,进而触发了 意外 NuGet 3.0.

的依赖

返回到该软件包的 1.1.36 版本解决了这个问题。