La solution proposée dans les notes de version pour la version 2.1 ne fonctionne pas out-of-the-box. Ils ont oublié de mentionner qu'il y a de code:
internal string ResolveInstallPath()
{
if (!string.IsNullOrEmpty(this.OutputDirectory))
{
return this.OutputDirectory;
}
ISettings settings = this._configSettings;
...
}
ce qui l'empêche de travailler. Pour corriger cela, vous devez modifier votre NuGet.les objectifs de fichier et supprimer " OutputDirectory paramètre:
<RestoreCommand>$(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(RequireConsentSwitch)</RestoreCommand>
Donc maintenant, si vous ajoutez 'repositoryPath' config quelque part dans NuGet.config (voir les notes de version pour obtenir une description de valable endroits pour mettre les fichiers de config), il sera de restaurer tous les paquets en un seul endroit, mais... Votre .csproj contient encore des astuces pour les assemblées écrit que les chemins d'accès relatifs...
Je ne comprends toujours pas pourquoi ils sont allés dure au lieu de changer de PackageManager donc, il serait ajouter indicateur des chemins relatifs à PackagesDir. C'est la façon dont je le fais manuellement les différentes localisations de package en local (sur mon bureau) et sur l'agent de build.
<Reference Include="Autofac.Configuration, Version=2.6.3.862, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
<Private>True</Private>
<HintPath>$(PackagesDir)\Autofac.2.6.3.862\lib\NET40\Autofac.Configuration.dll</HintPath>
</Reference>