Краткое руководство. Установка и использование пакета Visual Studio для Mac

Пакеты NuGet содержат многократно используемый код, предлагаемый другими разработчиками для ваших проектов. Дополнительные сведения см. в разделе Что такое NuGet?. Пакеты устанавливаются в проекте Visual Studio для Mac с помощью диспетчера пакетов NuGet. В этой статье описано, как использовать популярный пакет Newtonsoft.Json и консольный проект .NET Core. Этот процесс применим к любому другому проекту Xamarin или .NET Core.

После установки ссылаться на пакет в коде можно с помощью using <namespace>, где <namespace> соответствует используемому пакету. После указания ссылки можно обращаться к пакету посредством его интерфейса API.

Совет

Начните работу с сайта nuget.org: Разработчики .NET обычно находят компоненты, которые можно использовать в собственных приложениях, просматривая сайт nuget.org. Вы можете выполнить поиск непосредственно на сайте nuget.org или найти и установить пакеты в Visual Studio, как описано в этой статье. См. подробнее о поиске и оценке пакетов NuGet.

Предварительные требования

  • Visual Studio 2019 для Mac.

Вы можете установить бесплатный выпуск Community 2019 с сайта visualstudio.com либо использовать выпуск Professional или Enterprise.

См. сведения об установке и использовании пакета в Visual Studio в Windows.

Создание проекта

Пакеты NuGet можно установить в проект .NET, если эти пакеты поддерживают ту же требуемую версию .NET Framework, что и проект.

В этом пошаговом руководстве описано, как использовать консольное приложение .NET Core. Создайте проект в Visual Studio для Mac. Для этого выберите Файл > Создать решение и щелкните .NET Core > Приложение > Консольное приложение. Нажмите кнопку Далее. При появлении запроса примите для целевой платформы значения по умолчанию.

Visual Studio создаст проект и откроет его в обозревателе решений.

Добавление пакета NuGet Newtonsoft.Json

Чтобы установить пакет, используйте диспетчер пакетов NuGet. При установке пакета NuGet регистрирует зависимость в файле проекта или файле packages.config (в зависимости от формата проекта). Дополнительные сведения см. в разделе Обзор использования пакетов и рабочий процесс.

Диспетчер пакетов NuGet

  1. В обозревателе решений щелкните правой кнопкой мыши Зависимости и выберите Добавить пакеты.

    Пункт "Управление пакетами NuGet" для узла "Ссылки" проекта

  2. Вверху слева выберите nuget.org в качестве источника пакетов, выполните поиск по запросу Newtonsoft.Json, выберите этот пакет в списке и щелкните Пакеты:

    Поиск пакета Newtonsoft.Json

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

Использование интерфейса API Newtonsoft.Json в приложении

Добавив пакет Newtonsoft.Json в проект, вы можете вызывать его метод JsonConvert.SerializeObject для преобразования объекта в удобную для восприятия строку.

  1. Откройте файл Program.cs (на Панели решения) и замените его содержимое следующим кодом:

    using System;
    using Newtonsoft.Json;
    
    namespace NuGetDemo
    {
        public class Account
        {
            public string Name { get; set; }
            public string Email { get; set; }
            public DateTime DOB { get; set; }
        }
    
        class Program
        {
            static void Main(string[] args)
            {
                Account account = new Account()
                {
                    Name = "Joe Doe",
                    Email = "joe@test.com",
                    DOB = new DateTime(1976, 3, 24)
                };
                string json = JsonConvert.SerializeObject(account);
                Console.WriteLine(json);
            }
        }
    }
    
  2. Выполните сборку и запустите приложение, щелкнув Отладка > Начать отладку:

  3. После запуска приложения в консоли отобразятся сериализованные выходные данные JSON:

Выходные данные консольного приложения

Следующие шаги

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

См. подробнее о возможностях NuGet по приведенным ниже ссылкам.