У меня есть решение, которое содержит два Project.
/Solution
.sln
.nuget.config
/ProjectA
.csproj
.nuspec
/ProejctB
.csproj
.nuspec
Когда я добавляю зависимость ProjectA через nuget.
Структура проекта стала примерно такой:
/Solution
.sln
nuget.config
/packages
.nupkg
/lib
.dll
/ProjectA
.csproj
.nuspec
packages.config
/ProejctB
.csproj
.nuspec
По сути, Visual Studio создает файл packages.config и помещает туда зависимость. И зависимость добавляется в папку /packages
. Кроме того, содержимое .csproj
изменяется. (Добавлена ссылка, которая имеет относительный путь к dll внутри папки /packages
.)
У меня два вопроса.
1- Внутри файла nuget.config я поместил следующую строку. Поэтому я ожидаю, что nuget будет использовать локальный репозиторий по умолчанию вместо создания папки /packages
в решении. Как я могу предотвратить создание папки /packages в решении. Вместо этого я хотел бы использовать "%userprofile%\.nuget\packages"
.
<add key="globalPackagesFolder" value="%userprofile%\.nuget\packages" />
2- Когда я добавляю зависимость как пакет nuget. Тем не менее файл .csprj
изменен, и связанный путь dll добавлен туда как ссылка с относительным путем. Это нормально? Недостаточно ли автоматически сгенерированного packages.config
. Почему и этот файл обновляется.