Как установить nuget пакет
Краткое руководство. Установка и использование пакета в Visual Studio (только в Windows)
Предварительные требования
Вы можете установить бесплатный выпуск Community 2019 с сайта visualstudio.com либо использовать выпуск Professional или Enterprise.
Создание проекта
В этом пошаговом руководстве описано, как использовать простое приложение WPF. Создайте проект в Visual Studio, щелкнув Файл Создать проект и введя .NET в поле поиска. Затем выберите Приложение WPF (.NET Framework). Нажмите кнопку Далее. При появлении запроса примите значения по умолчанию для платформы.
Visual Studio создаст проект и откроет его в обозревателе решений.
Добавление пакета NuGet Newtonsoft.Json
Для установки пакета можно использовать диспетчер пакетов NuGet или консоль диспетчера пакетов. При установке пакета NuGet регистрирует зависимость в файле проекта или файле packages.config (в зависимости от формата проекта). Дополнительные сведения см. в разделе Обзор использования пакетов и рабочий процесс.
Диспетчер пакетов NuGet
В обозревателе решений щелкните правой кнопкой мыши узел Ссылки и выберите пункт Управление пакетами NuGet.
Выберите nuget.org в качестве источника пакетов, перейдите на вкладку Обзор, выполните поиск по запросу Newtonsoft.Json, выберите этот пакет в списке и нажмите кнопку Установить.
См. подробнее о диспетчере пакетов NuGet в руководстве по установке пакетов и управлении ими с помощью Visual Studio.
Примите все запросы касательно лицензии.
(Только в Visual Studio 2017.) Если вам будет предложено выбрать формат управления пакетом, выберите PackageReference в файле проекта.
В запросе на проверку изменений нажмите кнопку ОК.
Консоль диспетчера пакетов
Последовательно выберите Сервис Диспетчер пакетов NuGet Консоль диспетчера пакетов.
После открытия консоли убедитесь, что в раскрывающемся списке Проект по умолчанию показан проект, в который требуется установить пакет. Если в решении всего лишь один проект, он автоматически выбран.
Введите команду Install-Package Newtonsoft.Json (см. сведения о ней в Install-Package Newtonsoft.Json ). В окне консоли отображаются выходные данные команды. Ошибки обычно означают, что пакет не совместим с целевой платформой проекта.
Использование интерфейса API Newtonsoft.Json в приложении
Добавив пакет Newtonsoft.Json в проект, вы можете вызывать его метод JsonConvert.SerializeObject для преобразования объекта в удобную для восприятия строку.
Откройте файл MainWindow.xaml и замените существующий элемент Grid следующим кодом:
Откройте файл MainWindow.xaml.cs (который находится в обозревателе решений в узле MainWindow.xaml ) и вставьте в класс MainWindow следующий код.
Несмотря на то что вы добавили пакет Newtonsoft.Json в проект, JsonConvert подчеркивается красной волнистой линией, так как оператор using требуется в верхней части файла кода.
Выполните сборку и запустите приложение, нажав клавишу F5 или выбрав команду Отладка Начать отладку.
Нажмите кнопку. Надпись TextBlock заменится текстом в формате JSON:
Связанные видео
Другие видео о NuGet см. на Channel 9 и YouTube.
Дальнейшие действия
Поздравляем! Вы установили пакет NuGet и поработали с ним.
См. подробнее о возможностях NuGet по приведенным ниже ссылкам.
Рабочий процесс использования пакета
На веб-сайте nuget.org и в закрытых коллекциях пакетов, создаваемых в вашей организации, а также на других ресурсах вы можете найти десятки тысяч полезных пакетов, которые могут быть использованы в ваших приложениях и службах. Рабочий процесс использования пакетов во многом соответствует общему независимо от источника пакета.
NuGet запоминает удостоверение и номер версии каждого установленного пакета, записывая эти данные в файл проекта (при использовании формата PackageReference) или в файл в зависимости от типа проекта и версии NuGet. При использовании NuGet 4.0 и более поздних версий советуем использовать формат PackageReference. Кроме того, это можно настроить в Visual Studio через параметры пользовательского интерфейса диспетчера пакетов. В любом случае вы всегда можете найти соответствующий файл и просмотреть полный список зависимостей для вашего проекта.
Рекомендуется всегда проверять лицензии для каждого пакета, который вы планируете использовать в своем программном обеспечении. На веб-сайте nuget.org в правой части страницы с описанием для каждого пакета представлена ссылка на сведения о лицензии. Если для пакета не заданы условия лицензии, следует обратиться непосредственно к владельцу пакета по ссылке для связи с владельцем на странице пакета. Корпорация Майкрософт не предоставляет вам лицензию на какую-либо интеллектуальную собственность сторонних поставщиков пакетов и не несет ответственность за сведения, предоставляемые третьими лицами.
При установке пакетов NuGet, как правило, проверяет доступность пакета из кэша. Вы можете вручную очистить этот кэш из командной строки, как описывается в статье Управление папкой установки глобальных пакетов, кэшем и временными папками.
NuGet также проверяет совместимость целевых платформ, которые поддерживаются пакетом, с вашим проектом. Если пакет не содержит совместимых сборок, NuGet отображает сообщение об ошибке. См. раздел Устранение ошибок с несовместимостью пакетов.
При добавлении кода проекта в репозиторий исходного кода пакеты NuGet, как правило, не включаются. Если впоследствии планируется клонирование репозитория или получение проекта каким-либо образом с построением агентов в таких системах, как Visual Studio Team Services, перед выполнением построения необходимо восстановить требуемые пакеты:
В некоторых случаях требуется переустановить пакеты, которые уже включены в состав проекта, что также может потребовать переустановку зависимостей. Это легко сделать с помощью команды nuget reinstall или консоли диспетчера пакетов NuGet. Дополнительные сведения см. в разделе Повторная установка и обновление пакетов.
Способы установки пакетов NuGet
Пакеты NuGet можно скачать и установить с использованием любого из представленных в следующей таблице методов.
Quickstart: Install and use a package in Visual Studio (Windows only)
Once installed, refer to the package in code with using where is specific to the package you’re using. Once the reference is made, you can call the package through its API.
Prerequisites
You can install the 2019 Community edition for free from visualstudio.com or use the Professional or Enterprise editions.
Create a project
For this walkthrough, use a simple WPF app. Create a project in Visual Studio using File > New Project, typing .NET in the search box, and then selecting the WPF App (.NET Framework). Click Next. Accept the default values for Framework when prompted.
Visual Studio creates the project, which opens in Solution Explorer.
Add the Newtonsoft.Json NuGet package
To install the package, you can use either the NuGet Package Manager or the Package Manager Console. When you install a package, NuGet records the dependency in either your project file or a packages.config file (depending on the project format). For more information, see Package consumption overview and workflow.
NuGet Package Manager
In Solution Explorer, right-click References and choose Manage NuGet Packages.
Choose «nuget.org» as the Package source, select the Browse tab, search for Newtonsoft.Json, select that package in the list, and select Install:
If you want more information on the NuGet Package Manager, see Install and manage packages using Visual Studio.
Accept any license prompts.
(Visual Studio 2017 only) If prompted to select a package management format, select PackageReference in project file:
If prompted to review changes, select OK.
Package Manager Console
Select the Tools > NuGet Package Manager > Package Manager Console menu command.
Once the console opens, check that the Default project drop-down list shows the project into which you want to install the package. If you have a single project in the solution, it is already selected.
Enter the command Install-Package Newtonsoft.Json (see Install-Package). The console window shows output for the command. Errors typically indicate that the package isn’t compatible with the project’s target framework.
If you want more information on the Package Manager Console, see Install and manage packages using Package Manager Console.
Use the Newtonsoft.Json API in the app
With the Newtonsoft.Json package in the project, you can call its JsonConvert.SerializeObject method to convert an object to a human-readable string.
Open MainWindow.xaml and replace the existing Grid element with the following:
Open the MainWindow.xaml.cs file (located in Solution Explorer under the MainWindow.xaml node), and insert the following code inside the MainWindow class:
Even though you added the Newtonsoft.Json package to the project, red squiggles appears under JsonConvert because you need a using statement at the top of the code file:
Build and run the app by pressing F5 or selecting Debug > Start Debugging:
Select on the button to see the contents of the TextBlock replaced with some JSON text:
Related video
Find more NuGet videos on Channel 9 and YouTube.
Next steps
Congratulations on installing and using your first NuGet package!
To explore more that NuGet has to offer, select the links below.
Установка клиентских средств NuGet
Чтобы работать с NuGet в качестве потребителя или создателя пакета, вы можете использовать средства интерфейса командной строки (CLI) и функции NuGet в Visual Studio. В этой статье кратко описываются возможности различных средств, их установка и приведена сравнительная таблица доступности функций. См. подробнее о начале работы с пакетами с помощью NuGet в руководствах по установке и использование пакета с помощью CLI dotnet и Visual Studio. Чтобы приступить к созданию пакетов NuGet, см. разделы Создание и публикация пакета NET Standard (dotnet CLI) и Создание и публикация пакета NET Standard (Visual Studio).
MSBuild CLI также предоставляет возможности восстановления и создания пакетов, которые применяются на серверах сборки. MSBuild не является универсальным средством для работы с NuGet.
Команды консоли диспетчера пакетов работают только в Visual Studio для Windows, но не в других средах PowerShell.
Visual Studio
установка на Visual Studio 2017 и более поздних версий
установка на Visual Studio 2015 и более старых версий
Для Visual Studio 2010 и более ранних версий установите расширение «Диспетчер пакетов NuGet для Visual Studio». Обратите внимание, что если расширение не отображается на первой странице результатов поиска, попробуйте изменить раскрывающийся список сортировать на «большинство Скачиваний» или сортировку в алфавитном порядке.
Средства CLI
Интерфейс командной строки dotnet.exe
Сведения об использовании основных команд с CLI dotnet см. в статье Установка и использование пакета с помощью CLI dotnet.
Интерфейс командной строки nuget.exe
Windows
Mac OS и Linux
Поведение для этих ОС может несколько различаться.
В командной строке оболочки введите следующие команды:
Создайте псевдоним, добавив следующий скрипт к соответствующему файлу для вашей операционной системы (обычно
Перезагрузите оболочку. Проверьте установку. Для этого введите nuget без параметров. Должно отобразиться окно справки NuGet CLI.
Доступность функций
Признак | CLI dotnet | CLI nuget (Windows) | CLI nuget (Mono) | Visual Studio (Windows) | Visual Studio для Mac |
---|---|---|---|---|---|
Поиск пакетов | ✔ | ✔ | ✔ | ✔ | |
Установка или удаление пакетов | ✔ | ✔ (1) | ✔ | ✔ | ✔ |
Обновление пакетов | ✔ | ✔ | ✔ | ✔ | |
Восстановление пакетов | ✔ | ✔ | ✔ (2) | ✔ | ✔ |
Управление веб-каналами пакета (источниками) | ✔ | ✔ | ✔ | ✔ | |
Управление пакетами в веб-канале | ✔ | ✔ | ✔ | ||
Установка ключей API для веб-каналов | ✔ | ✔ | |||
Создание пакетов (3) | ✔ | ✔ | ✔ (4) | ✔ | |
Публикация пакетов | ✔ | ✔ | ✔ | ✔ | |
Репликация пакетов | ✔ | ✔ | |||
Управление папками global-package и кэша | ✔ | ✔ | ✔ | ||
Управление конфигурацией NuGet | ✔ | ✔ |
(3) Различные дополнительные функции пакетов доступны через CLI, только если они не представлены в средствах пользовательского интерфейса Visual Studio.
Предстоящие функции
Если вы хотите заранее оценить предстоящие возможности NuGet, установите предварительную версию Visual Studio Preview, которая работает параллельно со стабильными выпусками Visual Studio. Чтобы сообщить о проблемах или обменяться идеями о предварительных версиях, откройте обращение в репозитории NuGet GitHub.
Связанные темы
Разработчики, работающие в Windows, также могут рассмотреть обозреватель пакетов NuGet, автономное средство с открытым исходным кодом, позволяющее визуально изучать, создавать и изменять пакеты 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.
Поиск и установка пакета
В обозревателе решений щелкните правой кнопкой мыши Ссылки или имя проекта и выберите Управление пакетами NuGet.
На вкладке Обзор по популярности отображаются пакеты из выбранного в данный момент источника (см. подробнее об источниках пакетов). Выполните поиск определенного пакета с помощью поля поиска в левом верхнем углу. Выберите пакет в списке, чтобы отобразить сведения о нем. Это также активирует кнопку Установить и раскрывающийся список для выбора версии.
Чтобы включить предварительные версии в поиск и сделать их доступными в раскрывающемся списке версий, щелкните Включить предварительные версии.
Удаление пакета
В обозревателе решений щелкните правой кнопкой мыши Ссылки или сам проект и выберите Управление пакетами NuGet.
Откройте вкладку Установленные.
Выберите пакет для удаления (при необходимости используйте поиск, чтобы отфильтровать список) и щелкните Удалить.
Обратите внимание, что элементы управления Включить предварительные версии и Источник пакета не применяются при удалении пакетов.
Обновление пакета
В обозревателе решений щелкните правой кнопкой мыши Ссылки или сам проект и выберите Управление пакетами NuGet. (В проектах веб-сайтов щелкните правой кнопкой мыши папку Bin.)
Перейдите на вкладку Обновления, чтобы просмотреть пакеты, для которых доступны обновления из выбранных источников пакетов. Выберите Включить предварительные версии, чтобы включить предварительные версии пакетов в список обновлений.
Последовательно выберите пакет для обновления и нужную версию в раскрывающемся списке справа, а затем щелкните Обновить.
Чтобы обновить несколько пакетов до последних версий, выберите их в списке и нажмите кнопку Обновить, расположенную над списком.
Можно также обновить отдельный пакет на вкладке Установленные. В этом случае сведения о пакете будут содержать средство выбора версии (зависит от параметра Включить предварительные версии) и кнопку Обновить.
Управление пакетами для решения
Управление пакетами для решения — это удобный способ одновременно работать с несколькими проектами.
Выберите команду меню Средства Диспетчер пакетов NuGet > Управление пакетами NuGet для решения или щелкните правой кнопкой мыши решение и выберите >.
При управлении пакетами для решения пользовательский интерфейс позволяет выбрать проекты, затрагиваемые операциями.
Вкладка «Консолидация»
Разработчики обычно предпочитают не использовать разные версии одного и того же пакета NuGet в разных проектах в одном решении. Когда вы выбираете управление пакетами для решения, в пользовательском интерфейсе диспетчера пакетов появляется вкладка Консолидация, на которой вы можете отслеживать использование пакетов с разными номерами версий разными проектами в решении.
В этом примере проект ClassLibrary1 использует EntityFramework 6.2.0, а ConsoleApp1 использует EntityFramework 6.1.0. Для консолидации версий пакета сделайте следующее:
Диспетчер пакетов устанавливает выбранную версию пакета во все выбранные проекты. После этого пакет больше не будет отображаться на вкладке Консолидация.
Источники пакетов
Чтобы изменить источник, из которого Visual Studio получает пакеты, выберите его в средстве выбора источника.
Для управления источниками пакетов сделайте следующее:
Щелкните значок Параметры в пользовательском интерфейсе диспетчера пакетов, как показано ниже, или выберите команду Средства Параметры и прокрутите до пункта Диспетчер пакетов NuGet.
Выберите узел Источники пакетов.
Чтобы добавить источник, выберите +, измените имя, введите URL-адрес или путь в элементе управления + и щелкните Обновить. Источник отобразится в раскрывающемся списке для выбора.
Чтобы изменить источник пакета, выберите его, внесите изменения в поля Имя и Источник и щелкните Обновить.
Чтобы отключить источник пакета, снимите флажок слева от имени в списке.
Чтобы удалить источник пакета, выберите его и нажмите кнопку X.
Использование кнопок со стрелками вверх и вниз не меняет приоритетный порядок источников пакетов. Visual Studio игнорирует порядок источников пакетов, используя пакет из любого источника, первым ответившего на запросы. См. подробнее о восстановлении пакетов.
Если источник пакета появляется после удаления, он может быть указан в файлах NuGet.Config уровня компьютера или уровня пользователя. Чтобы определить расположение этих файлов, см. описание распространенных конфигураций NuGet. Затем удалите источник, отредактировав файлы вручную или с помощью команды nuget sources.
Элемент управления «Параметры» диспетчера пакетов
Если пакет выбран, пользовательский интерфейс диспетчера пакетов отображает небольшой развертываемый элемент управления Параметры под средством выбора версий (показан в свернутом и развернутом виде). Обратите внимание, что для некоторых типов проектов предоставляется только параметр Показать окно предварительного просмотра.
Эти параметры объясняются в следующих разделах.
Показать окно предварительного просмотра
При выборе этого параметра модальное окно отображает зависимости выбранного пакета перед его установкой.
Параметры установки и обновления
(доступно не для всех типов проектов)
Поведение зависимости — указывает способ определения устанавливаемых версий зависимых пакетов в NuGet.
Действие при конфликте файлов — указывает, как в NuGet должны обрабатываться пакеты, которые уже существуют в проекте или на локальном компьютере.
Параметры удаления
(доступно не для всех типов проектов)
Удалить зависимости — удаляются все зависимые пакеты, если на них нет ссылок в других местах проекта.
Принудительно удалить, даже если есть зависимости от него — пакет удаляется, даже если на него по-прежнему есть ссылка в проекте. Обычно используется в сочетании с удалением зависимостей для удаления пакета и любых установленных зависимостей. Но использование этого параметра может привести к нарушению ссылок в проекте. В таких случаях может потребоваться переустановить другие пакеты.