有没有办法在 Visual Studio 中自动更新已安装的 NuGet 包?

Gor*_*ger 5 nuget nuget-package visual-studio-2013

正如标题所示,我想知道是否有一种方法可以在包源中出现新版本时自动更新已安装的 NuGet 包。

该用例是一个将某些公司策略(代码分析、签名等)应用于我们的项目的包,一旦该包更新,我希望能够为此包配置自动更新。

我确实知道 NuGet 有一个包恢复功能,它会在构建项目时自动下载丢失的包,但是这是否会下载特定版本或具有匹配名称的最新包?

Gor*_*ger 1

NuGet恢复功能有意仅适用于一个特定版本。如果缺少较低版本的包,则不会使用具有不同版本号的相同包。

实施例1

  • packages.config 引用 1.0.0。0
  • 包源码包含1.0.0。0和 1.0.0。1
  • 1.0.0。0是会自动恢复的版本

实施例2

  • packages.config 引用 1.0.0。0
  • 包源仅包含1.0.0。1
  • 不会执行自动恢复,项目将不会构建

这种行为是有道理的,否则无法控制您实际构建的内容。想象一下,在您构建将要发布的版本之前,有人使用较新版本的软件包更新了软件包源......