Visual studio установка пакетов nuget

Установка пакетов и управление ими с помощью консоли диспетчера пакетов в Visual Studio (PowerShell)

Консоль диспетчера пакетов NuGet позволяет использовать команды PowerShell NuGet для поиска, установки, удаления и обновления пакетов NuGet. Это удобно, когда пользовательский интерфейс диспетчера пакетов не позволяет выполнять операции. См. подробнее об использовании CLI nuget.exe в консоли.

Консоль встроена в Visual Studio для Windows. Она не включена в Visual Studio для Mac и Visual Studio Code.

Перечисленные здесь команды относятся только к консоли диспетчера пакетов в Visual Studio и отличаются от команд модуля "Управление пакетами", доступных в общей среде PowerShell. В частности, в каждой среде есть команды, недоступные в другой среде, а в командах с тем же именем могут отличаться некоторые аргументы. При использовании консоли "Управление пакетами" в Visual Studio применяются команды и аргументы, описанные в этой статье.

Поиск и установка пакета

Для поиска и установки пакета необходимо выполнить три простых шага:

Откройте проект или решение в Visual Studio, а затем откройте консоль, щелкнув Средства > Диспетчер пакетов NuGet > Консоль диспетчера пакетов.

Найдите пакет, который требуется установить. Если вы уже знакомы с этим процессом, перейдите к шагу 3.

Выполните команду установки:

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

Многие операции консоли зависят от наличия решения, открытого в Visual Studio с использованием известного имени пути. Если у вас нет решения или оно не сохранено, отобразится сообщение об ошибке "Решение не открыто или не сохранено. Убедитесь, что вы открыли и сохранили решение". Это означает, что консоль не может определить папку решения. Эту ошибку можно исправить, сохранив несохраненное решение или создав и сохранив решение, если оно не открыто.

Открытие консоли и элементов управления консоли

Откройте консоль в Visual Studio, щелкнув Средства > Диспетчер пакетов NuGet > Консоль диспетчера пакетов. Консоль — это окно Visual Studio, которое может быть упорядочено и размещено по вашему усмотрению (см. руководство по настройке макетов окон в Visual Studio).

По умолчанию команды консоли работают с конкретным источником пакета и проектом, как указано в элементе управления в верхней части окна.

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

Выбор другого источника пакета или проекта изменяет эти значения по умолчанию для последующих команд. Чтобы переопределить эти настройки, не меняя значения по умолчанию, большинство команд поддерживают параметры -Source и -ProjectName .

Чтобы управлять источниками пакетов, щелкните значок шестеренки. Это ярлык для диалогового окна Средства > Параметры > Диспетчер пакетов NuGet > Источники пакетов, как описано на странице, посвященной пользовательскому интерфейсу диспетчера пакетов. Кроме того, элемент управления справа от средства выбора проектов очищает содержимое консоли.

Параметры консоли диспетчера пакетов и элементы очистки

Крайняя правая кнопка прерывает команду, которая выполняется в течение долгого периода времени. Например, выполнение Get-Package -ListAvailable -PageSize 500 перечисляет первые 500 пакетов в источнике по умолчанию (например, nuget.org), что может занять несколько минут.

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

Установка пакета

При установке пакета в консоли выполняются те же действия, которые описаны в руководстве по установке пакета NuGet, со следующими дополнениями:

  • Консоль отображает применимые условия лицензии в окне с соответствующим соглашением. Если вы не согласны с условиями, следует сразу же удалить пакет.
  • Кроме того, ссылка на пакет добавляется в файл проекта и отображается в обозревателе решений в узле Ссылки. Сохраните проект, чтобы просмотреть изменения непосредственно в файле проекта.

Удаление пакета

См. подробнее об Uninstall-Package. Если необходимо найти идентификатор, чтобы просмотреть все пакеты, установленные в проекте по умолчанию, используйте команду Get-Package.

При удалении пакета выполняются следующие действия:

  • Удаляются ссылки на пакет из проекта (и любого используемого формата управления). Ссылки больше не отображаются в обозревателе решений (возможно, потребуется перестроить проект, чтобы он был удален из папки Bin).
  • Отменяются все изменения, внесенные в app.config или web.config при установке пакета.
  • Удаляются ранее установленные зависимости, если остальные пакеты не используют эти зависимости.

Обновление пакета

Поиск пакета

См. подробнее о Find-Package. В Visual Studio 2013 и более ранних версиях используйте команду Get-Package.

Доступность консоли

Начиная с Visual Studio 2017, NuGet и диспетчер пакетов NuGet автоматически устанавливаются при выборе рабочей нагрузки, связанной с .NET. Вы также можете установить эти компоненты отдельно, щелкнув Отдельные компоненты > Средства для работы с кодом > Диспетчер пакетов NuGet в установщике Visual Studio.

Кроме того, если у вас нет диспетчера пакетов NuGet в Visual Studio 2015 и более ранних версиях, щелкните Инструменты > Расширения и обновления и найдите расширение диспетчера пакетов NuGet. Если вы не можете использовать установщик расширений в Visual Studio, скачайте расширение отсюда: https://dist.nuget.org/index.html.

Читайте также:  Госуслуги установка газового оборудования

Консоль диспетчера пакетов сейчас недоступна в Visual Studio для Mac. Но аналогичные команды доступны через CLI NuGet. В Visual Studio для Mac есть пользовательский интерфейс для управления пакетами NuGet. См. подробнее о включении пакета NuGet в проект.

Консоль диспетчера пакетов не входит в Visual Studio Code.

Расширение консоли диспетчера пакетов

Некоторые пакеты устанавливают новые команды для консоли. Например, MvcScaffolding создает команды, например команду Scaffold (см. ниже), которая, в свою очередь, создает контроллеры и представления ASP.NET MVC.

Установка и использование MvcScaffold

Настройка профиля PowerShell NuGet

Профиль PowerShell позволяет сделать часто используемые команды доступными при использовании PowerShell. NuGet поддерживает профиль NuGet, который обычно находится в следующем расположении:

Источник



Visual Studio. Знакомство с NuGet Manager

Под управлением подразумевается поиск, скачивание, установка, настройка, обновление и удаление файлов сторонних разработчиков у себя в приложении.

Технически NuGet Manager представляет собой расширение для Visual Studio, доступное программисту в процессе работы над своим проектом. Если вы используете «студию» версии 2012 и выше, то NuGet уже заранее предустановлен и готов к работе. В случае версии 2010 его нужно установить вручную. Его можно скачать либо с официального сайта, либо установить напрямую из Visual Studio через менеджер дополнений.

Давайте откроем менеджер. Для этого в Solution Explorer щелкаем правой кнопкой мыши по рабочему проекту и в контекстном меню выбираем пункт «Manage NuGet Packages…»:

NuGet Manager открывается в новой вкладке в текстовом редакторе. Интерфейс у него довольно простой.

Три главные вкладки:

  1. Browse. Найти и установить нужные нам пакеты из хранилища NuGet
  2. Installed. Список уже установленных в нашем проекте библиотек
  3. Updates. Библиотеки в нашем проекте, которые можно обновить до новой версии

Также в интерфейсе менеджера представлены:

  1. Строка поиска. Мы можем искать нужную нам библиотеку, начав вводить ее название
  2. Кнопка «Обновить состояние окна»
  3. Галочка «Включать в выдачу предрелизные версии библиотек», например, какие-то тестовые или экспериментальные
  4. Выпадающий список Package source. В каком месте менеджер будет искать нужные нам библиотеки
  5. Кнопка «Настройки менеджера»
  6. Главная панель с результатами выдачи (слева)
  7. Панель с описанием того компонента, который мы выбрали (справа)

Попробуем установить какую-нибудь библиотеку к нам в проект, например, Entity Framework. Для этого переходим во вкладку Browse и в строке поиска начинаем вводить название нужного пакета. Далее выбираем его из списка и нажимаем кнопку Install. При необходимости можно выбрать определенную версию, отличную от стабильной последней, а также ознакомиться с информацией о данном пакете (авторы, лицензия и т.д.).

В зависимости от устанавливаемого пакета NuGet Manager также определит все его зависимости, или, другими словами, все дополнительные библиотеки, которые требуются устанавливаемому пакету для полноценной работы. В случае с Entity Framework таких зависимостей нет.

Теперь давайте более детально посмотрим, что конкретно сделал менеджер при установке этого компонента в наш проект:
1. Он определил, что для данного пакета нет никаких сторонних зависимостей. Если бы они были, то менеджер автоматически их определил и подтянул.
2. NuGet Manager добавил ссылку на установленный компонент в наш проект (References):

3. NuGet разместил скачанные файлы в специальной папке Packages, которая находится в корневой папке нашего приложения. Это очень удобно, ссылки в проекте теперь идут на эту папку:

4. В конфигурационный файл packages.config была добавлена запись о новом пакете:

5. В конфигурационный файл приложения web.config также были внесены необходимые изменения, чтобы подготовить компонент Entity Framework к работе:

Вот такие операции происходят, когда NuGet Manager добавляет новую библиотеку к нам в проект.

Подобным образом происходит и обновление, и удаление компонентов из нашего проекта. В случае удаления менеджер также автоматически вносит изменения в файлы нашего проекта – убирает записи из файла packages.config, удаляет соответствующие файлы в папке packages, убирает ссылки на эти библиотеки.

Давайте рассмотрим еще несколько моментов.

С NuGet Manager можно работать не только через графический интерфейс, но и через командную строку (консоль). Чтобы ее открыть, идем Tools -> NuGet Package Manager -> Package Manager Console.

Работа в консоли ничем не отличается от работы в графическом интерфейсе, это дело вкуса.

Управление осуществляется посредством специальных команд. Чтобы вывести в консоль список всех доступных команд нужно написать инструкцию:

Команд достаточно много, и описание каждой можно найти в официальной документации на сайте. Вот пример использования наиболее популярных команд.

Добавляем пакет Entity Framework в текущий проект:

Обновляем ранее установленный пакет:

Переустанавливаем ВСЕ пакеты во всех проектах в данном решении:

Вы также можете создать и опубликовать свой собственный пакет в репозиторий nuget.org, тем самым сделав его публичным и доступным через NuGet Manager. Для этого нужно соблюсти ряд правил и условий, а также правильно подготовить свой проект к публикации. Опять же всю информацию об этом можно найти в официальной документации.

Читайте также:  Электрошкаф металлический для наружной установки

Подведем краткий итог. NuGet – это просто незаменимый инструмент для разработчика на сегодняшний день. Он автоматизирует весь процесс работы с пакетами в проекте, а именно поиск, скачивание, установка, настройка, обновление и удаление файлов.

В видео версии этого урока более подробно и наглядно показана работа с этим инструментом.

Источник

Устанавливайте пакеты и управляйте ими непосредственно в Visual Studio с помощью диспетчера пакетов NuGet.

С помощью пользовательского интерфейса диспетчера пакетов NuGet в Visual Studio вы можете легко устанавливать, удалять и обновлять пакеты NuGet в проектах и решениях в ОС Windows. Если вы используете Visual Studio для Mac, см. руководство по включению пакета NuGet в проект. Пользовательский интерфейс диспетчера пакетов не входит в Visual Studio Code.

Если у вас нет диспетчера пакетов NuGet в Visual Studio 2015, щелкните Средства > Расширения и обновления и найдите расширение Диспетчер пакетов NuGet. Если вы не можете использовать установщик расширений в Visual Studio, скачайте расширение отсюда: https://dist.nuget.org/index.html.

Начиная с Visual Studio 2017, NuGet и диспетчер пакетов NuGet автоматически устанавливаются с любыми рабочими нагрузками, связанными с .NET. Установите его отдельно, щелкнув Отдельные компоненты > Средства для работы с кодом > Диспетчер пакетов NuGet в установщике Visual Studio.

Поиск и установка пакета

В обозревателе решений щелкните правой кнопкой мыши Ссылки или сам проект и выберите Управление пакетами NuGet.

Пункт меню "Управление пакетами NuGet"

На вкладке Обзор по популярности отображаются пакеты из выбранного в данный момент источника (см. подробнее об источниках пакетов). Выполните поиск определенного пакета с помощью поля поиска в левом верхнем углу. Выберите пакет в списке, чтобы отобразить сведения о нем. Это также активирует кнопку Установить и раскрывающийся список для выбора версии.

Вкладка "Обзор" в диалоговом окне "Управление пакетами NuGet"

Выберите нужную версию в раскрывающемся списке и щелкните Установить. Visual Studio установит пакет и его зависимости в проект. Может появиться запрос на принятие условий лицензионного соглашения. После завершения установки добавленные пакеты отобразятся на вкладке Установленные. Пакеты также перечислены в узле Ссылки обозревателя решений. Это значит, что их можно указывать в проекте с помощью инструкций using .

Ссылки в обозревателе решений

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

Удаление пакета

В обозревателе решений щелкните правой кнопкой мыши Ссылки или сам проект и выберите Управление пакетами NuGet.

Откройте вкладку Установленные.

Выберите пакет для удаления (при необходимости используйте поиск, чтобы отфильтровать список) и щелкните Удалить.

Удаление пакета

Обратите внимание, что элементы управления Включить предварительные версии и Источник пакета не применяются при удалении пакетов.

Обновление пакета

В обозревателе решений щелкните правой кнопкой мыши Ссылки или сам проект и выберите Управление пакетами NuGet. (В проектах веб-сайтов щелкните правой кнопкой мыши папку Bin.)

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

Последовательно выберите пакет для обновления и нужную версию в раскрывающемся списке справа, а затем щелкните Обновить.

Обновление пакета

Для некоторых пакетов отключена кнопка Обновить. При этом появляется сообщение "На этот пакет неявно ссылается пакет SDK" (AutoReferenced). Это сообщение означает, что пакет является частью более крупной платформы или пакета SDK и не должен обновляться отдельно. (Такие пакеты отмечаются атрибутом <IsImplicitlyDefined>True</IsImplicitlyDefined> ). Например, Microsoft.NETCore.App является частью пакета SDK для .NET Core, и версия пакета не совпадает с версией платформы среды выполнения, используемой приложением. Необходимо обновить установку .NET Core, чтобы получить новые версии ASP.NET Core и среды выполнения .NET Core. См. подробнее о метапакетах и управлении версиями .NET Core. Это относится к следующим часто используемым пакетам:

  • Microsoft.AspNetCore.All
  • Microsoft.AspNetCore.App
  • Microsoft.NETCore.App
  • NETStandard.Library

Пример пакета, отмеченного как неявная ссылка или AutoReferenced

Чтобы обновить несколько пакетов до последних версий, выберите их в списке и нажмите кнопку Обновить, расположенную над списком.

Кроме того, можно обновить отдельный пакет на вкладке Установленные. В этом случае сведения о пакете будут содержать средство выбора версии (зависит от параметра Включить предварительные версии) и кнопку Обновить.

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

Управление пакетами для решения — это удобный способ одновременно работать с несколькими проектами.

Выберите команду меню Средства > Диспетчер пакетов NuGet > Управление пакетами NuGet для решения или щелкните правой кнопкой мыши решение и выберите Управление пакетами NuGet.

Управление пакетами NuGet для решения

При управлении пакетами для решения пользовательский интерфейс позволяет выбрать проекты, затрагиваемые операциями.

Выбор проекта при управлении пакетами для решения

Вкладка "Консолидация"

Разработчики обычно предпочитают не использовать разные версии одного и того же пакета NuGet в разных проектах в одном решении. Когда вы выбираете управление пакетами для решения, в пользовательском интерфейсе диспетчера пакетов появляется вкладка Консолидация, на которой вы можете отслеживать использование пакетов с разными номерами версий разными проектами в решении.

Вкладка "Консолидация" пользовательского интерфейса диспетчера пакетов

В этом примере проект ClassLibrary1 использует EntityFramework 6.2.0, а ConsoleApp1 использует EntityFramework 6.1.0. Для консолидации версий пакета сделайте следующее:

  • Выберите проекты для обновления в списке проектов.
  • Выберите версию, которая будет использоваться во всех проектах в элементе управления Версия, например EntityFramework 6.2.0.
  • Нажмите кнопку Установить.
Читайте также:  Установка принтера куосера 2040

Диспетчер пакетов устанавливает выбранную версию пакета во все выбранные проекты. После этого пакет больше не будет отображаться на вкладке Консолидация.

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

Чтобы изменить источник, из которого Visual Studio получает пакеты, выберите его в средстве выбора источника.

Средство выбора источника пакетов в пользовательском интерфейсе диспетчера пакетов

Для управления источниками пакетов сделайте следующее:

Щелкните значок Параметры в пользовательском интерфейсе диспетчера пакетов, как показано ниже, или выберите Средства > Параметры и прокрутите до пункта Диспетчер пакетов NuGet.

Значок параметров пользовательского интерфейса диспетчера пакетов

Выберите узел Источники пакетов.

Параметры источников пакетов

Чтобы добавить источник, выберите + , измените имя, введите URL-адрес или путь в элементе управления Источник и щелкните Обновить. Источник отобразится в раскрывающемся списке для выбора.

Чтобы изменить источник пакета, выберите его, внесите изменения в поля Имя и Источник и щелкните Обновить.

Чтобы отключить источник пакета, снимите флажок слева от имени в списке.

Чтобы удалить источник пакета, выберите его и нажмите кнопку X.

Использование кнопок со стрелками вверх и вниз не меняет приоритетный порядок источников пакетов. Visual Studio игнорирует порядок источников пакетов, используя пакет из любого источника, первым ответившего на запросы. См. подробнее о восстановлении пакетов.

Если источник пакета появляется после удаления, он может быть указан в файлах NuGet.Config уровня компьютера или уровня пользователя. Чтобы определить расположение этих файлов, см. описание распространенных конфигураций NuGet. Затем удалите источник, отредактировав файлы вручную или с помощью команды nuget sources.

Элемент управления "Параметры" диспетчера пакетов

Если пакет выбран, пользовательский интерфейс диспетчера пакетов отображает небольшой развертываемый элемент управления Параметры под средством выбора версий (показан в свернутом и развернутом виде). Обратите внимание, что для некоторых типов проектов предоставляется только параметр Показать окно предварительного просмотра.

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

Эти параметры объясняются в следующих разделах.

Показать окно предварительного просмотра

При выборе этого параметра модальное окно отображает зависимости выбранного пакета перед его установкой.

Пример диалогового окна предварительного просмотра

Параметры установки и обновления

(доступно не для всех типов проектов)

Поведение зависимости — указывает способ определения устанавливаемых версий зависимых пакетов в NuGet.

  • Игнорировать зависимости — пропускает установку зависимостей, что обычно приводит к прерыванию установки пакета.
  • Наименьший [по умолчанию] — устанавливает зависимость с минимальным номером версии, соответствующим требованиям основного выбранного пакета.
  • Наибольший номер исправления — устанавливает версию с теми же основными и дополнительными номерами версий, но с самым большим номером исправления. Например, если указана версия 1.2.2, будет установлена самая высокая версия, которая начинается с 1.2.
  • Наибольший номер дополнительной версии — устанавливает версию с тем же основным номером версии, но с самым большим номером дополнительной версии и номером исправления. Если указана версия 1.2.2, будет установлена самая высокая версия, которая начинается с 1.
  • Наибольший — устанавливает самую высокую доступную версию пакета.

Действие при конфликте файлов — указывает, как в NuGet должны обрабатываться пакеты, которые уже существуют в проекте или на локальном компьютере.

  • По приглашению — NuGet спрашивает, следует ли сохранять или перезаписывать существующие пакеты.
  • Пропустить все — NuGet пропускает перезапись существующих пакетов.
  • Перезаписать все — NuGet перезаписывает существующие пакеты.

Параметры удаления

(доступно не для всех типов проектов)

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

Принудительно удалить, даже если есть зависимости от него — пакет удаляется, даже если на него по-прежнему есть ссылка в проекте. Обычно используется в сочетании с удалением зависимостей для удаления пакета и любых установленных зависимостей. Но использование этого параметра может привести к нарушению ссылок в проекте. В таких случаях может потребоваться переустановить другие пакеты.

Источник

Установка NuGet Package Manager для Visual Studio for Mac

Чтобы иметь больше возможностей для работы с NuGet в Visual Studio for Mac вам понадобиться установить расширение, а для этого выполнить несколько шагов:

Скачать расширение

Переходим к репозиторию с расширением и находим ссылку на подходящую вам версию пакета:

Например для версии студии выше 7.3, скачиваем по данной ссылке:

Установка расширения

В Visual Studio откройте «Extensions Manager»

Visual Studio for Mac меню открытия Extensions Manager

В открывшемся окне, нажмите кнопку «Install from file»

Install from file

В открывшемся окне выберите ранее скачанный пакет расширения:

Диалог выбора пакета расширения

Далее кнопку «Install» для подтверждения установки

Подтверждение установки

После успешной установки, вы увидите расширение в списке установленных:

Список установленных расширений

Теперь перезапускаем Visual Studio для вступления изменений в силу.

Проверяем результат

Для того, чтобы открыть NuGet Package Manager: кликните правой кнопкой мыши на названии проекта или солюшена и нажмите «Manage Packages».

Пункт Manage Packages в контекстном меню

Расширение дает дополнительные возможности по управлению NuGet пакетами как для проекта, так и для всего решения целиком.

Окно управления пакетами

На этом все. Теперь вы можете легко управлять NuGet библиотеками как и в версии Visual Studio для Windows.

Источник

Adblock
detector