1.Для VS2017, .Net framework, ASP.Net MVC, какое место установки пакета по умолчанию?
Это зависит от того, какой метод управления пакетами вы используете. Если вы используете package.config
, местом установки пакета по умолчанию является root-решение, если вы используете PackageReference
, местом установки пакета по умолчанию является %userprofile%.nuget\packages\
. Именно поэтому вы добавили пакеты в один проект внутри решения, которое, по-видимому, восстанавливается / устанавливается в нескольких разных местах. Вы можете выгрузить и отредактировать свой проект, проверив файл проекта .csproj
, вы найдете следующее:
<ItemGroup>
<PackageReference Include="xxxxx">
<Version>x.x.x</Version>
</PackageReference>
</ItemGroup>
Чтобы решить эту проблему, вы можете принять совет Лекса. Если вы хотите объединить, сделать выбор и изменить файлы. Вы можете удалить те пакеты, которые используют PackageReference
(или package.config), а затем изменить настройки nuget (Инструменты-> Параметры-> NuGet Диспетчер пакетов-> Общие -> Формат управления пакетами по умолчанию -> Packages.config), затем переустановите эти пакеты, убедитесь, что они используют единую форму.
2.Как указать, из какого источника поступает пакет для CI / CD?
Вы не можете делать такие вещи, и вам не нужно делать вещи. Как мы знаем, когда мы устанавливаем пакеты nuget из нескольких каналов, все пакеты загружаются на локальный хост, Visual Studio будет использовать эти пакеты на локальном, Nuget не волнует, из какого источника он поступает.
3.Настраивает ли NuGet пакеты, уже установленные на моем компьютере?
4. Если да, то где NuGet ищет пакеты и где я могу найти его список местоположений, которые он ищет.
Да, вы можете использовать командную строку nuget locals all -list
, чтобы найти ее список местоположений.
Подробнее см. Управление глобальными пакетами, кешем и временными папками .
Надеюсь, это поможет.