Упражнение. Установка пакетов
Разработчики из компании Tailwind Traders понимают, что разработка приложений для платформы .NET потребует вложения серьезных ресурсов. Эти приложения будут отображать для пользователей много понятных человеку данных, включая даты, время и числа.
.NET имеет возможности для разработки этого приложения, но разработчики уверены, что кто-то уже решил эту проблему. Им необходима платформа. После некоторого поиска они находят Humanizer в реестре пакетов NuGet. Кажется, она широко используется и обещает удовлетворить все их потребности в .NET. В частности, управление строками, перечислениями, датами, временем, интервалами времени, числами и количествами.
На этом этапе разработчики хотят, чтобы вы установили Humanizer, написали несколько манипуляций с данными и запустили их, чтобы убедиться, что Humanizer соответствует своим обещаниям.
Примечание.
В этом модуле используются .NET CLI (интерфейс командной строки) и Visual Studio Code для локальной разработки. После выполнения этого модуля можно применить основные понятия с помощью Visual Studio (Windows) или продолжения разработки с помощью Visual Studio Code (Windows, Linux и macOS).
В этом модуле используется пакет SDK для .NET 8.0. Убедитесь, что установлен .NET 8.0, выполнив следующую команду в предпочтительном терминале команд:
dotnet --list-sdks
Выходные данные, аналогичные следующему примеру, отображаются:
6.0.317 [C:\Program Files\dotnet\sdk]
7.0.401 [C:\Program Files\dotnet\sdk]
8.0.100 [C:\Program Files\dotnet\sdk]
Убедитесь, что в списке есть версия, которая начинается с цифры 8
. Если нет списка или команда не найдена, установите последний пакет SDK для .NET 8.0.
Создание примера проекта .NET
Чтобы настроить проект .NET для работы с зависимостями, мы используем Visual Studio Code. Visual Studio Code содержит встроенный терминал, который упрощает создание проектов. Если вы не хотите использовать другой редактор кода, вы можете выполнять команды из этого модуля в терминале.
В Visual Studio Code выберите пункты меню Файл>Открыть папку.
Создайте в произвольном месте папку с именем DotNetDependencies и нажмите кнопку Выбрать папку.
Откройте интегрированный терминал Visual Studio Code, выбрав Вид>Терминал в главном меню.
Скопируйте и вставьте следующую команду в окно терминала:
dotnet new console -f net8.0
Эта команда создает файл Program.cs в папке с простой программой Hello World, которая была написана ранее, а также файл проекта C# с именем DotNetDependencies.csproj.
У вас должен появиться доступ к этим файлам.
-| obj -| DotNetDependencies.csproj -| Program.cs
Чтобы запустить программу Hello World, скопируйте и вставьте следующую команду в окно терминала.
dotnet run
В окне терминала отображается "Hello, world!" в качестве выходных данных.
Настройте Visual Studio Code для отладки на платформе .NET.
Откройте Program.cs. Когда вы впервые открываете файл C# в Visual Studio Code, появляется запрос на установку рекомендуемых расширений для C#. Нажмите кнопку Установить.
Visual Studio Code установит расширение C#. В нем показан другой запрос на добавление необходимых ресурсов для сборки и отладки проекта. Выберите Да.
Вы можете закрыть вкладку Extension: C# , чтобы сосредоточиться на написанном коде.
Добавление пакета NuGet с помощью средства .NET Core
Откройте Program.cs. Он должен выглядеть так:
Console.WriteLine("Hello, World!");
Предыдущая функция выполняется в начале приложения и выводит строку в консоль. Давайте добавим Humanizer, обработаем данные и запишем их в консоль.
Установите библиотеку Humanizer с помощью следующей команды.
dotnet add package Humanizer --version 2.7.9
Откройте файл DotNetDependencies.csproj и найдите раздел
ItemGroup
. Теперь у вас должна быть запись, которая выглядит следующим образом:<ItemGroup> <PackageReference Include="Humanizer" Version="2.7.9" /> </ItemGroup>
Добавьте следующее содержимое в верхней части файла Program.cs, который инициализирует Humanizer:
using Humanizer;
Файл Program.cs должен выглядеть примерно так:
using Humanizer; Console.WriteLine("Hello, World!");
Добавьте следующее содержимое в файл Program.cs в нижнюю часть файла под
Console.WriteLine("Hello, World!");
.static void HumanizeQuantities() { Console.WriteLine("case".ToQuantity(0)); Console.WriteLine("case".ToQuantity(1)); Console.WriteLine("case".ToQuantity(5)); } static void HumanizeDates() { Console.WriteLine(DateTime.UtcNow.AddHours(-24).Humanize()); Console.WriteLine(DateTime.UtcNow.AddHours(-2).Humanize()); Console.WriteLine(TimeSpan.FromDays(1).Humanize()); Console.WriteLine(TimeSpan.FromDays(16).Humanize()); }
Замените
Console.WriteLine("Hello, World!");
следующим кодом:Console.WriteLine("Quantities:"); HumanizeQuantities(); Console.WriteLine("\nDate/Time Manipulation:"); HumanizeDates();
Сохраните файл (Файл>Сохранить или CTRL + S). Запустите приложение, выполнив в терминале следующую команду.
dotnet run
Вы должны увидеть следующие выходные данные:
Quantities: 0 cases 1 case 5 cases Date/Time Manipulation: yesterday 2 hours ago 1 day 2 weeks
Поздравляем. Вы успешно установили Humanizer в качестве зависимости и письменной логики для кода приложения, чтобы сделать данные более читаемыми для человека. Humanizer, похоже, соответствует заявленным характеристикам, и компания Tailwind Traders, скорее всего, будет рада такой оценке.