练习 - 安装软件包

已完成

Tailwind Traders 的开发人员意识到,他们将投入大量资源来开发面向 .NET 平台的应用。 这些应用将向用户显示易于读取的数据,包含日期、时间和数字。

.NET 提供了用于开发此应用的功能,但开发人员确信某人已经解决了此问题。 他们需要一个框架。 经过一番搜索,他们在 NuGet 包注册表中找到了 Humanizer。 它似乎被广泛使用,并确保满足所有 .NET 需求。 具体而言,可以操作和显示字符串、枚举、日期、时间、时间跨度、数字和数量。

此时,开发人员希望你安装 Humanizer,编写几个数据操作,然后运行这些操作来查看 Humanizer 是否兑现了其承诺。

备注

本模块使用 .NET CLI(命令行接口)和 Visual Studio Code 进行本地开发。 完成本模块后,你可以使用 Visual Studio (Windows) 应用概念,或使用 Visual Studio Code(Windows、Linux 和 macOS)进行持续开发。

本模块使用 .NET 8.0 SDK。 通过在首选命令终端中运行以下命令,确保你已安装 .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 开头的版本。 如果未列出任何版本或未找到命令,请安装最新的 .NET 8.0 SDK

创建示例 .NET 项目

为了设置 .NET 项目来处理依赖项,我们将使用 Visual Studio Code。 Visual Studio Code 包含一个集成终端,这使创建新项目变得简单。 如果不想使用其他代码编辑器,可在终端中运行此模块中的命令。

  1. 在 Visual Studio Code 中,选择“文件”>“打开文件夹”

  2. 在选择的位置中创建名为 DotNetDependencies 的新文件夹,然后选择“选择文件夹”。

  3. 从主菜单中选择“视图”>“终端”,以便从 Visual Studio Code 中打开集成终端

  4. 在终端窗口中,复制粘贴以下命令:

    dotnet new console -f net8.0
    

    此命令会在文件夹中创建一个 Program.cs 文件(内附已编写的基本“Hello World”程序),还将创建一个名为 DotNetDependencies.csproj 的 C# 项目文件。

    你现在应可以访问以下文件。

    -| obj
    -| DotNetDependencies.csproj
    -| Program.cs
    
  5. 在终端窗口中,复制粘贴以下命令来运行“Hello World”程序。

    dotnet run
    

终端窗口显示“Hello World!”作为输出。

使用新控制台应用程序的 Visual Studio Code 的屏幕截图。

设置 Visual Studio Code 以进行 .NET 调试

打开 Program.cs。 首次在 Visual Studio Code 中打开 C# 文件时,你将收到一条提示,提示你安装推荐的 C# 扩展。 选择提示中的“安装”按钮。

Visual Studio Code 提示安装推荐扩展的屏幕截图。

Visual Studio Code 将安装 C# 扩展。 它还会显示另一条提示,来提示你添加所需资产以生成和调试项目。 选择 “是”

Visual Studio Code 提示添加所需资产的屏幕截图。

可以关闭“扩展:C#”选项卡,以将注意力放在你要编写的代码上。

使用 .NET Core 工具添加 NuGet 包

  1. 打开 Program.cs。 应如下所示:

    Console.WriteLine("Hello, World!");
    

    前面的函数在应用程序启动时运行,并向控制台输出一个字符串。 接下来,添加 Humanizer,操作数据,并将其写入控制台。

  2. 通过运行以下命令安装 Humanizer 库:

    dotnet add package Humanizer --version 2.7.9
    

    打开 DotNetDependencies.csproj 文件并找到 ItemGroup 部分。 现在应会出现如下所示的条目:

    <ItemGroup>
        <PackageReference Include="Humanizer" Version="2.7.9" />
    </ItemGroup>
    
  3. 在 Program.cs 文件顶部添加以下内容来初始化 Humanizer:

    using Humanizer;
    

    Program.cs 文件现在应如下所示:

    using Humanizer;
    
    Console.WriteLine("Hello, World!");
    
  4. 将以下内容添加到 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());
    }
    
  5. Console.WriteLine("Hello, World!"); 替换为以下代码:

    Console.WriteLine("Quantities:");
    HumanizeQuantities();
    
    Console.WriteLine("\nDate/Time Manipulation:");
    HumanizeDates();
    
  6. 保存文件(“文件”“保存”或 >)。 通过在终端中运行以下命令来运行应用程序:

    dotnet run
    

    应会收到以下输出:

    Quantities:
    0 cases
    1 case
    5 cases
    
    Date/Time Manipulation:
    yesterday
    2 hours ago
    1 day
    2 weeks
    

恭喜。 你已成功地将 Humanizer 安装为依赖项,并为应用程序代码编写了逻辑,使数据更易于读取。 Humanizer 似乎兑现了自己的承诺,Tailwind Traders 可能对此评估感到满意。