首页 > 解决方案 > 构建时的 NuGet 更新(VS2017 Pro)

问题描述

我目前正在寻找一种在 Visual Studio 2017 中触发 NuGet 更新的方法。

我正在使用 VS2017 Pro。我的代码库由多个解决方案组成,这些解决方案将代码分成层(数据访问/业务逻辑/ui/应用程序/等)。构建解决方案时,它会生成一个或多个 NuGet 包,然后由“食物链”上游的项目使用。在我们的构建服务器上自动化 NuGet 更新是微不足道的,但是如果我们可以配置我们的开发环境,使其始终尝试在构建时获取最新的 NuGet 包,类似于包还原的工作方式,那就太好了。

我遇到了很多关于旧版本 Visual Studio/NuGet 的信息,包括更新自动生成的 nuget.targets 文件,但是这些不是在 VS2017 中使用 NuGet 包管理器 4.6.x 创建的(除非我正在做有事吗!)

任何帮助或建议将不胜感激。

标签: visual-studio-2017nuget

解决方案


构建时的 NuGet 更新(VS2017 Pro)

如果预构建事件对您来说为时已晚,您可以尝试使用预构建事件/构建后事件将新项目添加到解决方案中,以更新其他项目/解决方案使用的 nuget 包:

<YourNuGetPath>\nuget.exe update "<YourSolutionPath>\xxxx.sln"

或者

<YourNuGetPath>\nuget.exe update "<ThePackages.configFilePath>\Packages.config"

在这种情况下,您可以构建这个新的添加项目,以使用 nuget 包为这些项目/解决方案获取最新的 NuGet 包。

此外,如果您不想在那些使用 nuget 包的项目之前构建这个项目,您可以让这些项目引用这个新的添加项目,Visual Studio 将在构建那些使用 nuget 包的项目之前构建它。

希望这可以帮助。


推荐阅读