我目前正在寻找一种在Visual Studio 2017中触发构建时的NuGet更新的方法。
我正在使用VS2017 Pro。我的代码库由多个解决方案组成,这些解决方案将代码分解为多个层(数据访问/业务逻辑/ ui /应用程序/等)。当构建解决方案时,它会生成一个或多个NuGet包,然后由“食物链”上的项目消耗。 在我们的构建服务器上自动化NuGet更新是微不足道的,但是如果我们能够配置我们的开发环境以便总是尝试在构建上获得最新的NuGet包,那么它将会很好。
我遇到了很多关于Visual Studio / NuGet旧版本的信息,其中包括更新自动生成的nuget.targets文件,但是这些不是在VS2017中使用NuGet包管理器4.6.x创建的(除非我做错了什么!)
非常感谢任何帮助或建议。
答案 0 :(得分:0)
构建时的NuGet更新(VS2017 Pro)
如果预构建事件对您来说太晚了,您可以尝试使用预构建事件/后构建事件向解决方案添加新项目以更新nuget包,其他项目/解决方案也是如此: / p>
<YourNuGetPath>\nuget.exe update "<YourSolutionPath>\xxxx.sln"
或
<YourNuGetPath>\nuget.exe update "<ThePackages.configFilePath>\Packages.config"
在这种情况下,您可以构建这个新的添加项目,以使用nuget包获取这些项目/解决方案的最新NuGet包。
此外,如果你不想在那些使用nuget包项目之前构建这个项目,你可以让这些项目引用这个新的添加项目,Visual Studio将在构建那些消耗的nuget包项目之前构建它。
希望这有帮助。