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

Последнее обновление: 12.11.2022

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

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

Для упрощения работы с пакетами, их распространенния Microsoft организовал глобальный репозиторий пакетов в виде сервиса nuget.org. И если разработчик хочет поделиться своими наработками, он может загрузить свой код в виде Nuget-пакета в этот репозиторий, а другие разработчики могут скачать этот пакет и использовать его в свой программе. Посмотрим, как устанавливать Nuget-пакеты и использовать их в своем проекте. Прежде всего стоит отметить, что есть различные способы установки пакетов. В данном случае рассмотрим установку пакетов с помощью .NET CLI и в Visual Studio.

Установка nuget-пакетов с помощью .NET CLI

Если мы компилируем приложение непосредственно с помощью .NET CLI без каких-нибудь сред разработки типа Visual Studio, то мы можем воспользоваться встроенными инструментами, которые имеются в .NET SDK.

Для примера создадим с помощью .NET CLI новый проект консольного приложения:

dotnet new console

Для примера возьмем такой популярный Nuget-пакет как Newtonsoft.Json, который предназначен для работы с кодом json. Для этого перейдем в терминале к расположению проекта и выполним команду:

dotnet add package Newtonsoft.Json

После команды dotnet add package указывается имя пакета:

Установка пакета Nuget в проект на C# с помощью .NET CLI

если после этого мы откроем файл конфигурации проекта с расширением csproj, то встретим там элемент PackageReference, который представляет добавленный пакет

<ItemGroup>
	<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
</ItemGroup>

Здесь мы видим атрибут Include, который указывает на название пакета для включения в проект, и атрибут Version - версию пакета.

Пакет добавили, теперь используем его. Для этого определим следующий код программы:

using Newtonsoft.Json;  // подключаем пространство имен из пакета Newtonsoft.Json

Person tom = new Person("Tom", 38);
// сериализуем объект tom в код json
string json = JsonConvert.SerializeObject(tom);
Console.WriteLine(json);


class Person
{
    public string Name {get;set;}
    public int Age {get;set;}
    public Person(string name, int age)
    {
        Name = name;
        Age = age;
    }
}

С помощью вызова статического метода JsonConvert.SerializeObject(tom) сериализуем объект tom в код json и потом этот код выводим на консоль.

Запустим проект командой dotnet run и посмотрим на результат программы:

{"Name":"Tom","Age":38}

Таким образом, мы установили в проект Nuget-пакет и использовали его функциональность в своей программе. Если впоследствии пакет станет не нужен, то его можно удалить командой:

dotnet remove package Newtonsoft.Json

После команды dotnet remove package указывается название удаляемого пакета.

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

Visual Studio обладает богатым функционалом в плане работы с nuget-пакетами. Так, возьмем также простейший проект консольного приложения и добавим в него тот же пакет Newtonsoft.Json. Для этого нажмем правой кнопкой на название проекта и в контекстном меню выберем Manage NuGet Packages...:

Добавление nuget пакетов в проект на C# в Visual Studio

Нам откроется встроенный менеджер пакетов Nuget:

Добавление nuget пакетов в проект в Visual Studio

Для упрощения поиска нужного пакета введем название пакета в поле поиска. После этого список пакетов обновится. И обычно первый пакет в этом списке тот, который нужен. При необходимости в правой части мы можем посмотреть информацию о пакете.

Итак, нажмем на кнопку Install для его установки. Далее может отобразиться дополнительное окно для просмотра пакетов, которые непосредственно будут установлены:

Установка nuget пакетов в проект на C# в Visual Studio

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

Установка nuget пакета в проект на C# в Visual Studio

И теперь мы также сможем использовать функциональность пакета в программе.

В качестве альтернативы для добавления пакетов можно использовать Package Manager Console. Для этого в меню Visual Studio перейдем к пункту Tools -> NuGet Package Manager -> Package Manager Console. И в открывшемся внизу в Visual Studio окне Package Manager Console введем команду:

Install-Package Newtonsoft.Json

Формат: после команды Install-Package указывается название устанавливаемого пакета.

Install-Package и установка пакета nuget в C# в Visual Studio
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850