Поделиться через


Параметры диспетчера пакетов NuGet в Visual Studio

Visual Studio предоставляет несколько страниц параметров для настройки поведения диспетчера пакетов NuGet. Параметры конфигурации для NuGet хранятся в файлах NuGet.Config.

Доступ к параметрам NuGet

Существует несколько способов доступа к параметрам диспетчера пакетов NuGet:

  1. В главном меню: перейдите к параметрам инструментов>, а затем разверните диспетчер пакетов NuGet в левой области.
  2. В меню NuGet, который находится в меню "Параметры диспетчера > пакетов Диспетчера пакетов NuGet", в меню "Сервис>" диспетчера пакетов.
  3. Быстрый поиск. Используйте поиск Visual Studio для поиска "NuGet" или имени параметра, связанного с NuGet, чтобы быстро перейти на страницу "Параметры".
  4. Из пользовательского интерфейса диспетчера пакетов: нажмите значок параметров (шестеренки) на панели инструментов пользовательского интерфейса диспетчера пакетов.
  5. В консоли диспетчера пакетов: щелкните значок параметров (шестеренки) на панели инструментов консоли диспетчера пакетов.

General

Страница "Общие параметры" содержит параметры, управляющие поведением управления пакетами NuGet.

Кнопка

Восстановление пакета

Параметры автоматического восстановления пакетов во время операций сборки:

  • Разрешить NuGet скачать отсутствующие пакеты: выберите, чтобы включить восстановление пакетов и команду "Восстановить пакеты NuGet".
  • Автоматически проверьте наличие отсутствующих пакетов во время сборки в Visual Studio. При запуске сборки из Visual Studio выберите автоматически восстановить отсутствующие пакеты.

Дополнительные сведения о поведении восстановления пакетов см. в статье "Восстановление пакетов ".

Перенаправления привязки

  • Пропустить применение перенаправлений привязки. Если включена, NuGet не будет автоматически добавлять или обновлять перенаправления привязок в app.config или web.config файлах во время установки или обновления пакета.

Управление пакетами

  • Формат управления пакетами по умолчанию: выберите между форматами NuGet PackageReference (рекомендуется для большинства проектов) и packages.config (устаревший формат для старых проектов). Дополнительные сведения см. в разделе "Выбор формата управления пакетами по умолчанию".

    • PackageReference: хранит ссылки на пакеты непосредственно в файлах проекта. Это современный формат, поддерживающий более эффективное разрешение зависимостей и необходимый для проектов в стиле SDK.
    • packages.config: устаревший формат XML-файла, в который хранятся сведения о пакете отдельно от файла проекта.
  • Запрос на выбор формата при первой установке пакета. При включении Visual Studio попросит выбрать между PackageReference и packages.config при первом установке пакета в проекте, который еще не содержит пакетов.

Очистка локальных ресурсов NuGet

Кнопка "Очистить локальные ресурсы NuGet" позволяет очистить локальные кэши NuGet, в том числе:

  • http-cache: скачанные метаданные и пакеты пакета
  • глобальные пакеты: папка установленных пакетов
  • temp: временные файлы
  • plugins-cache: результаты операции подключаемого модуля

Дополнительные сведения о кэшах и папках NuGet см. в разделе "Управление глобальными пакетами, кэшем и временными папками".

Файлы конфигурации

На странице параметров файлов конфигурации отображаются файлы NuGet.Config, которые применяются к текущему решению и позволяют открывать их непосредственно в Visual Studio для редактирования.

Чтобы изменить файл, выберите путь к файлу и нажмите кнопку "Открыть". Файл откроется на новой вкладке в Visual Studio, где он может быть редактирован напрямую.

Страница файлов конфигурации параметров NuGet с выделенной кнопкой

Файлы конфигурации перечислены в порядке от самого высокого до самого низкого приоритета. NuGet использует иерархическую систему конфигурации, в которой параметры из нескольких файлов конфигурации объединяются. Дополнительные сведения см. в разделе "Общие конфигурации NuGet".

Источники пакетов

Страница параметров источников пакетов позволяет управлять источниками, из которых NuGet загружает пакеты.

Страница

Управление источниками пакетов

Выводит список всех настроенных источников пакетов в соответствии с файлами NuGet.Config.

  • Имя: отображаемое имя источника
  • Источник: URL-адрес или путь к файлу для источника пакета
  • Включен флажок: включение или отключение источника без его удаления.
  • Разрешить небезопасные подключения: включение или отключение, разрешающее небезопасные HTTP-подключения

Чтобы изменить, используйте кнопки "Добавить", "Изменить" и "Удалить " под таблицей. Флажки могут быть переключаны непосредственно в таблице. Нажмите кнопку "Сохранить" в диалоговом окне добавления и редактирования, и изменения будут обновлены в соответствующем файле NuGet.Config.

Диалоговое окно

Источники пакетов на уровне компьютера

Источники пакетов, определенные на уровне компьютера, отображаются в выделенном разделе ниже. Обычно они подготавливаются рабочими нагрузками Visual Studio и могут быть включены или отключены с помощью флажка в столбце "Включен".

Таблица источников на уровне компьютера на странице

Разрешить небезопасные подключения

По соображениям безопасности NuGet применяет использование источников HTTPS по умолчанию. Если необходимо использовать источник HTTP, необходимо явно разрешить его. При использовании источника HTTP первый столбец таблицы "Источники пакетов" будет отображать значок со сведениями о предупреждении или ошибке с источником пакета в этой строке.

⚠️ Если используется источник пакета HTTP и включен параметр "Разрешить небезопасные подключения", в левом столбце состояния отображается предупреждение:

Источники HTTP небезопасны. Вместо этого рекомендуется использовать ПРОТОКОЛ HTTPS. Параметр AllowInsecureConnections включен, разрешающий доступ ПО HTTP.

Страница

❌ Если используется источник HTTP и отключено разрешение небезопасных подключений, в левом столбце состояния отображается ошибка, а восстановление NuGet завершится ошибкой:

NuGet требует источников HTTPS. Чтобы использовать источник HTTP, необходимо явно задать значение allowInsecureConnections в файле NuGet.Config.

Страница

Дополнительные сведения о настройке разрешений источника HTTP см. в статье https://aka.ms/nuget-https-everywhere.

Сопоставление исходного кода пакета

Сопоставление источников пакетов позволяет контролировать, какие источники пакетов используются для определенных пакетов, повышая безопасность цепочки поставок.

Страница сопоставления источников пакетов параметров NuGet

Чтобы изменить, используйте кнопки "Добавить", "Изменить" и "Удалить " под таблицей.

Управление сопоставлениями источников пакетов

Выводит список всех настроенных сопоставлений источников пакетов в соответствии с файлами Конфигурации NuGet.Config.

  • Шаблон пакета: шаблон пакета, сопоставленный в данный момент (например, Microsoft.* или Contoso.Contracts)
  • Источник: один или несколько источников пакетов, сопоставленных с шаблоном пакета. Источники пакетов должны быть включены для отображения.

Чтобы изменить, используйте кнопки "Добавить", "Изменить" и "Удалить " под таблицей. Нажмите кнопку "Сохранить" в диалоговом окне добавления и редактирования, и изменения будут обновлены в соответствующем файле NuGet.Config.

Диалоговое окно добавления сопоставления источников пакетов

Дополнительные сведения см. в разделе "Сопоставление источников пакетов".

Недопустимые сопоставления источников

Если источник пакета, указанный в существующем сопоставлении источников, не включен в файлах NuGet.Config, ошибка появится в самом левом столбце.

Убедитесь, что все исходные значения в сопоставлениях ссылаются на источники пакетов, доступные и включенные. В противном случае сопоставление может не работать должным образом.

Сопоставление исходного кода пакета с недопустимым источником пакета