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

时间:2015-08-06 08:10:20

标签: visual-studio-2013 nuget nuget-package

正如标题所说,我想知道一旦新版本在软件包源中可用,是否有办法自动更新已安装的NuGet软件包。

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

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

2 个答案:

答案 0 :(得分:0)

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
  • 不会执行自动恢复,项目不会构建

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

答案 1 :(得分:0)

尽管聚会晚了,但我想补充一点,PackageReference可能可以更新NuGet软件包。

请参见https://docs.microsoft.com/de-de/nuget/reference/package-versioning