跳至页脚内容
Iron Academy Logo
C# 常见问题

使用 DotNet 格式对代码进行编程格式化

Gerald Versluis
9m 34s

在本文中,我们将介绍使用 dotnet 格式工具以编程方式格式化 C# .NET 代码的过程。 本指南基于 Gerald Versluis 的视频教程"使用 DotNet Format 自动格式化您的 C# .NET 代码",他在视频中演示了如何有效使用该工具,以确保您的代码遵守一致的格式化标准。 我将在视频中提供时间戳和 Gerald 所做的详细解释,以帮助您跟上并将这些技术应用到您的项目中。

DotNet 格式简介

在(0:36)处,Gerald 介绍了 dotnet 格式,这是一种根据 .editorconfig 文件中定义的规则来格式化 C# 代码的工具。该文件对于在整个项目中执行一致的编码风格至关重要。 确保所有代码遵守相同的格式准则,其中包括:

  • 缩进样式:是使用制表符还是空格。
  • 间距规则:运算符、大括号等周围的间距。
  • 代码结构:单行和多行结构的格式。

通过应用这些规则,dotnet 格式有助于维护统一的代码库,使其更易于阅读和管理。

了解 .editorconfig 文件

正如杰拉尔德在(0:48)处解释的那样,.editorconfig 文件指定了各种编码风格偏好。 该文件非常灵活,允许您定义各种格式规则,包括

  • 缩进首选项:决定缩进时使用制表符还是空格,以及使用多少空格。
  • 间距指南:控制运算符、大括号和关键字等代码元素的间距。
  • 其他格式规则:定义其他样式规则,以确保代码的一致性。

.editorconfig文件是不同编辑器和集成开发环境中代码格式配置的中心点。

DotNet 格式工具概述

Gerald 解释说,dotnet 格式是 .NET 运行时的全局工具(1:13)。 作为一个全局工具,这意味着只需安装一次,就可以在系统中的各种 .NET 项目中使用。 这样可以保证代码格式的一致性,而无需为每个项目单独安装或配置。

您可以访问 GitHub 上的 dotnet 格式资源库(1:26)。 该资源库提供源代码、文档和有关工具的其他信息,帮助用户了解其功能并随时更新最新版本。

DotNet 格式的基本用法

在(2:09)处,Gerald 演示了使用 dotnet 格式的基本命令:

dotnet format <options> <workspace>
dotnet format <options> <workspace>
SHELL

什么是工作区?

在 dotnet 格式的语境中,术语 "工作区 "指的是将被格式化的代码范围。 这可能包括

  • 解决方案文件:包含多个项目的 .sln 文件。
  • 项目文件:包含特定代码文件的单个 .csproj 文件。
  • 文件夹:包含多个代码文件(包括 .cs 和潜在的 .vb 文件)的目录。

您可以灵活地指定不同类型的工作区,以便在项目的各个层面应用格式。

功能和选项

Gerald 在(2:27)处重点介绍了 dotnet 格式的几个主要功能和选项:

  • 自动修正:该工具可根据 .editorconfig 文件中定义的规则自动修正格式问题。这有助于在整个项目中保持一致的代码风格,而无需人工干预。
  • 仅检查:如果您希望检查格式问题而不做修改,可以使用该工具仅检查问题。 该功能在持续集成 (CI) 管道中尤其有用。

高级选项和自定义

Gerald 探讨了高级选项和定制。 他提到

  • 严重程度:允许您指定应修复的问题的严重性级别。 这有助于解决特定类型的格式问题。
  • 包含/排除文件:您可以控制格式化时包含或排除哪些文件。 这对于重点介绍代码库的特定部分非常有用。
  • 仅使用退出代码检查:通过使用检查选项,您可以验证是否存在任何格式问题,而无需应用修复。 退出代码将显示是否发现问题。
  • JSON 报告:生成 JSON 格式的详细报告,让您深入了解代码的格式化状态。
  • Verbosity: 设置 Verbosity 级别,以控制生成的输出量。
  • 工具版本:检查 dotnet 格式的版本,以确保与您的项目兼容,并随时更新新功能。

安装 Dotnet 格式工具

Gerald 首先解释了 dotnet 格式工具的安装过程,该工具对于以编程方式格式化 C# 代码至关重要。 他演示了如何使用以下命令将其设置为全局工具:

dotnet tool install -g dotnet-format
dotnet tool install -g dotnet-format
SHELL

该命令可确保 dotnet 格式在全球可用,便于从任何命令提示符或终端进行访问。 Gerald 强调了 .NET Core 运行时的必要性,如果您最近一直在使用 .NET,就应该安装 .NET Core。

安装截图

为了确认安装是否成功,在(4:00)处,Gerald 运行:

dotnet format /?
dotnet format /?
SHELL

该命令显示可用选项和命令列表,验证 dotnet 格式是否已正确安装并准备就绪。

命令选项截图

在(4:11)处,Gerald 指出某些选项(如--dry-run)已被弃用,并建议使用最新的代码格式。

应用代码格式修正

检查格式问题

以 Xamarin Community Toolkit 代码库为例,Gerald 首先检查了格式问题,但没有进行任何修改。 他在运行:

dotnet format . -f --check
dotnet format . -f --check
SHELL

识别需要格式化的文件。 Gerald 在(5:26)处解释了如何使用 --folder 指定工作区目录,或使用 dotnet 格式 sln 指定解决方案文件。 此命令列出了存在格式问题的文件。

错误级别检查

每个执行的进程都有一个表示状态的退出代码。 Gerald 执行了以下命令来检查错误级别:

echo %errorlevel%
echo %errorlevel%
SHELL

Gerald 演示,退出代码为 2 表示存在需要解决的格式错误。

错误级别截图

应用和验证修复

然后,Gerald 演示了如何通过再次运行命令(但不使用 --check 标志)来应用格式修正:

dotnet format . -f
dotnet format . -f
SHELL

这将根据 .editorconfig 文件中定义的规则自动格式化代码文件。Gerald 会使用上述相同命令再次检查退出代码,确保其为 0,表明所有格式化问题都已解决。

为了验证更改,在(8:00)处,他使用 GitHub Desktop 等图形工具查看更新后的文件。 该工具显示了一些改进,如纠正的空白、有条理的 using 语句以及其他格式调整。

GitHub Desktop截图

将格式化整合到您的工作流程中

Gerald 建议将 dotnet 格式工具纳入您的构建 CI 管道。这种做法可确保代码格式应用的一致性,并有助于保持高质量的代码标准。 通过自动格式化流程,您可以避免手动格式化任务,并确保所有代码都符合定义的样式规则。

结论

按照杰拉尔德的详细讲解,您可以轻松地将 dotnet 格式集成到您的开发流程中,实现 C# .NET 代码格式的自动化。 无论您是独自工作还是作为团队的一员,该工具都能帮助确保您的代码保持简洁、一致和易读。 请务必查看 Gerald 的视频,观看实际演示并进一步了解 dotnet 格式工具。 此外,请访问他的YouTube频道,了解更多关于 C# 代码的见解。

Hero Worlddot related to 使用 DotNet 格式对代码进行编程格式化
Hero Affiliate related to 使用 DotNet 格式对代码进行编程格式化

分享您的所爱,赚取更多收入

您为使用 .NET、C#、Java、Python 或 Node.js 的开发人员创建内容吗?将您的专业知识转化为额外收入!

钢铁支援团队

我们每周 5 天,每天 24 小时在线。
聊天
电子邮件
打电话给我