通过脚本将Nuget包源添加到visual studio

Lar*_*eau 10 nuget nuget-package

我们正在玩Nuget并希望设置私有包源(在内部网络服务器上).我按照以下说明将其添加到visual studio中 - (参见包源代码)https://docs.nuget.org/consume/Package-Manager-Dialog

我想知道是否有一种在Visual Studio外部编写脚本的方法.(当我重建一个新的工作站时,我可以自动将它添加到VS)

Mat*_*ard 19

NuGet包源存储在NuGet.Config文件中,该文件可以存储在三个不同的位置:

  1. 用户资料
  2. 随着解决方案本身.
  3. ProgramData中的机器范围:%ProgramData%\ NuGet\Config*.config

对于用户配置文件,包源存储在文件中:

%AppData%\NuGet\NuGet.Config
Run Code Online (Sandbox Code Playgroud)

在Visual Studio中添加包源时,这是保存包源的位置.

对于每个解决方案,Visual Studio将在使用用户配置文件中的一个目录之前查看NuGet.Config文件的几个目录.使用目录c:\ Projects\MySolution中的解决方案,然后NuGet将在目录中查找此文件:

  • C:\项目\ MySolution.nuget \nuget.config
  • C:\项目\ MySolution \nuget.config
  • C:\项目\nuget.config
  • C:\项目\nuget.config
  • C:\nuget.config

机器范围的包源显示在Visual Studio中对话框的机器范围部分中.Visual Studio将查看以下目录:

  • %programdata%\的NuGet\CONFIG\IDE \版本\ SKU的*.config
  • %programdata%\的NuGet\CONFIG\IDE \版本的*.config
  • %programdata%\的NuGet\CONFIG\IDE的*.config
  • %programdata%\的NuGet\Config中的*.config
  • %ProgramData%\的NuGet\CONFIG\IDE的*.config
  • %ProgramData%\的NuGet\Config中的*.config

请注意,IDE将替换为VisualStudio.版本将替换为Visual Studio版本号.SKU将被Ultimate,Pro,Professional或Premium取代.

要以编程方式将包源添加到NuGet.Config文件,您可以使用NuGet.exe,它允许您使用类似于以下命令行添加或更新包源:

nuget.exe sources add|update -Name [name] -Source [source]
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用其他工具更新NuGet.Config文件中的XML.