使用nuget下载旧版本的软件包

有没有办法用nuget下载以前版本的软件包,而不是最新版本?

在Visual Studio中打开包pipe理器控制台 – 它在工具/ NuGet包pipe理器/包pipe理器控制台中。 然后运行Install-Package命令:

 Install-Package Common.Logging -Version 1.2.0 

详细信息请参阅命令参考 。

编辑:为了列出一个包的版本,你可以使用带有远程参数和filter的Get-Package命令:

 Get-Package -ListAvailable -Filter Common.Logging -AllVersions 

通过在Install-Package命令中的version选项之后按下tab键,可以获得最新可用版本的列表。

浏览到包索引中的页面,例如。 http://www.nuget.org/packages/Newtonsoft.Json/4.0.5

然后按照给出的安装说明:

 Install-Package Newtonsoft.Json -Version 4.0.5 

或者要下载.nupkg文件,请按照“下载”链接,例如。 https://www.nuget.org/api/v2/package/Newtonsoft.Json/4.0.5

已过时:安装我的Chrome扩展程序Nutake ,它插入一个下载链接。

另一个选项是更改packages.config文件中的版本号。 这会使NuGet在下次构build时下载该版本的dll。

在NuGet 3.x(Visual Studio 2015)中,您可以从UI中select版本

NuGet 3包管理器用户界面

在NuGet 3.0中, Get-Package命令被弃用,并被Find-Package命令replace。

 Find-Package Common.Logging -AllVersions 

有关详细信息,请参阅NuGet命令参考文档 。

如果您尝试在Visual Studio 2015中使用Get-Package,则会显示此消息。

 This Command/Parameter combination has been deprecated and will be removed in the next release. Please consider using the new command that replaces it: 'Find-Package [-Id] -AllVersions' 

或者@Yishai说,你可以在Visual Studio的NuGet屏幕中使用版本号下拉菜单。

由于原始问题没有说明应该使用哪个NuGet前端,我想提及的是,NuGet 3.5通过命令行客户端(也可用于降级)增加了对更新到特定版本的支持:

 NuGet.exe update Common.Logging -Version 1.2.0