Tailwind Traders 的开发人员意识到,他们将投入大量资源来开发面向 .NET 平台的应用。 这些应用将向用户显示易于读取的数据,包含日期、时间和数字。
.NET 可以实现这一点,但开发人员确信有人已经解决了此问题。 他们需要一个框架。 经过一番搜索,他们在 NuGet 包注册表中找到了 Humanizer。 它似乎已广泛使用,并且承诺满足其在操作和显示字符串、枚举、日期、时间、时间跨度、数字和数量方面的所有 .NET 需求。
此时,开发人员希望你安装 Humanizer,编写几个数据操作,然后运行这些操作来查看 Humanizer 是否兑现了其承诺。
备注
本模块使用 .NET CLI(命令行接口)和 Visual Studio Code 进行本地开发。 完成本模块后,你可以使用 Visual Studio (Windows)、Visual Studio for Mac (macOS) 来应用概念,或使用 Visual Studio Code(Windows、Linux & macOS)继续开发。
此模块使用 .NET 6.0 SDK。 通过在首选终端中运行以下命令,确保你已安装 .NET 6.0:
dotnet --list-sdks
将显示类似于下面的输出:
3.1.100 [C:\program files\dotnet\sdk]
5.0.100 [C:\program files\dotnet\sdk]
6.0.100 [C:\program files\dotnet\sdk]
确保列出了以 6
开头的版本。 如果未列出任何版本或未找到命令,请安装最新的 .NET 6.0 SDK。
创建示例 .NET 项目
为了设置 .NET 项目来处理依赖项,我们将使用 Visual Studio Code。 Visual Studio Code 包含一个集成终端,这使创建新项目变得简单。 如果不想使用其他代码编辑器,可在终端中运行此模块中的命令。
在 Visual Studio Code 中,选择“文件”>“打开文件夹”。
在选择的位置中创建名为 DotNetDependencies 的新文件夹,然后选择“选择文件夹”。
从主菜单中选择“视图”>“终端”,以便从 Visual Studio Code 中打开集成终端。
在终端窗口中,复制粘贴以下命令。
dotnet new console -f net6.0
此命令会在文件夹中创建一个 Program.cs 文件(内附已编写的基本“Hello World”程序),还将创建一个名为 DotNetDependencies.csproj 的 C# 项目文件。你现在应可以访问以下文件。
-| obj
-| DotNetDependencies.csproj
-| Program.cs
在终端窗口中,复制粘贴以下命令来运行“Hello World”程序。
dotnet run
终端窗口显示“Hello World!”作为输出。
设置 Visual Studio Code 以进行 .NET 调试
打开 Program.cs。 首次在 Visual Studio Code 中打开 C# 文件时,你将收到一条提示,提示你安装推荐的 C# 扩展。 选择提示中的“安装”按钮。
Visual Studio Code 将安装 C# 扩展。 它还会显示另一条提示,来提示你添加所需资产以生成和调试项目。 选择 “是” 。
可以关闭“扩展:C#”的选项卡,重点关注我们将要编写的代码。
使用 .NET Core 工具添加 NuGet 包
打开 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 可能对此评估感到满意。