TLDR: sí
NuGet usa una aplicación jerárquica de fuentes de paquetes que comienza con NuGet.config en el nivel de su perfil de usuario de Windows y luego aplica una configuración cada vez más granular comenzando en la raíz de la ruta del archivo que contiene su solución, finalmente terminando con el directorio que contiene su archivo de solución.
Así que esto es lo que he logrado averiguar, cortesía de un Twitterer útil que me indicó este documento:
https://docs.nuget.org/consume/nuget-config-file
Cuando edita las fuentes del paquete NuGet en la Tools > NuGet Package Manager > Package Manager Settings: Package Sources
opción de Visual Studio , aplica esos cambios de forma predeterminada al archivo NuGet.config que se encuentra en su %APPDATA%\NuGet
directorio. Para anular esta configuración por solución (o por grupo de soluciones), debe agregar un archivo NuGet.config ubicado estratégicamente en algún lugar a lo largo de la ruta de su solución o soluciones.
Todo quedará claro si lee el documento de NuGet, la solución que proporciono a continuación le permitirá especificar rápidamente una configuración para una única solución de Visual Studio:
- Vaya a% APPDATA% \ NuGet y obtenga una copia de NuGet.config
- Vierta una copia en la raíz de su solución, es decir, donde reside Application.sln.
- Anule los valores predeterminados aplicados a su perfil de usuario editando la copia para que contenga solo las fuentes del paquete NuGet que son relevantes para esta solución, por ejemplo, la fuente privada NuGet que contiene paquetes propietarios para esta solución, pero que no debe aplicarse a otros proyectos. - por ejemplo:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageRestore>
<add key="enabled" value="True" />
<add key="automatic" value="True" />
</packageRestore>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSources>
<clear />
<add key="My Private NuGet Server" value="http://myprivatenuget.com:8080/nuget" />
</packageSources>
<disabledPackageSources>
<add key="Microsoft and .NET" value="true" />
</disabledPackageSources>
</configuration>
Si desea una configuración que se aplica a múltiples soluciones, asegurar sus carpetas de soluciones están todas contenidas dentro de un directorio común y puso el NuGet.config de las fuentes de paquetes relevantes para esas soluciones en ese directorio común, asegurando que todas las carpetas de soluciones para proyectos que aren 't de usar estas fuentes de paquetes no están contenidos en esta carpeta común.