ReSharper 2026.3 Help

代码语法样式:单层嵌套语句的大括号

C# 规范允许您在某些父语句下的单个嵌套语句周围安全地省略大括号,例如 if-else、 foreach 等。 然而,代码样式指南在这方面可能有所不同。 有些人认为这里的大括号是必需的,有些人则认为它们是多余的。 无论您偏好哪种样式,重要的是在整个代码库中一致使用大括号。 使用 ReSharper,您可以定义在每种代码块类型后使用大括号的偏好,并强制执行此样式。

ReSharper 还提供了多个 格式规则 ,用于大括号布局(空格、制表符和换行)。 要查看和配置这些规则,请打开 ReSharper 选项(ReSharper | 选项 ),在搜索字段中输入 braces ,并检查 代码编辑 | C# | 格式化样式 下页面上的匹配项。

ReSharper 帮助您在现有代码中应用大括号样式,并在使用 代码补全和 代码生成功能生成新代码时考虑您的偏好,应用 代码模板并执行 重构。

应用大括号的样式偏好

默认情况下,ReSharper 不会对单层嵌套语句的大括号进行任何操作,因为所有相关的 代码检查均被禁用。 因此,如果您希望 ReSharper 控制单层嵌套语句的样式偏好并通知您偏好违规,您需要先 配置您的偏好。

ReSharper highlights code that does not comply with your preferences and suggests the corresponding quick-fix or fix in scope. 例如,您可以选择为 using 使用大括号:

ReSharper 帮助为单层嵌套语句添加大括号

另一种以批量模式强制执行单层语句大括号偏好的方法是 代码清理。 您可以使用内置配置文件之一 完全清理或 重新格式化并应用语法样式运行 代码清理 ,或者创建并运行 仅针对您特定任务的自定义配置文件 ,如下所述。

使用自定义代码清理配置文件应用大括号偏好

  1. 从主菜单中选择 ReSharper | 选项 或按下 Alt+R O 。

  2. 转到清理配置文件设置页面: 代码编辑 | 代码清理 | 配置文件。

  3. 按照 创建新的自定义清理配置文件 部分中的描述创建一个新配置文件。 在右侧的配置文件首选项中,展开 应用语法样式 | C# 节点并选中 为单行语句添加/移除大括号... 复选框。

  4. 在 选项 对话框中点击 保存 以应用修改,让 ReSharper 选择保存位置,或者通过从 保存到 选择器中选择特定的设置层来保存修改。 有关更多信息,请参见 管理和共享 resharper 设置。

  5. 选择要强制执行偏好设置的范围:

    • 将光标放置在文件中的任意位置,以对整个文件强制执行您的偏好设置。

    • 在 解决方案资源管理器 中选择一个或多个项目,以对这些节点及其子项目下的文件强制执行您的偏好。

  6. 执行以下操作之一:

    • 按下 Control+Alt+F 或从主菜单中选择 ReSharper | 编辑| 清理代码…。

    • 右键单击文本编辑器中的任意位置或右键单击选定内容,并在上下文菜单中选择 清理代码。

  7. 在打开的 代码清理 对话框中,选择新创建的配置文件。

  8. 单击 运行。 ReSharper 将在选定范围内强制执行您的偏好。

如果您希望在不打开 代码清理 对话框选择配置文件的情况下强制执行大括号偏好,您可以将创建的配置文件绑定到 静默清理 ,并通过按 Control+Shift+Alt+F 运行它。 您还可以创建一个 自定义清理配置文件 ,将应用偏好与其他代码样式任务结合起来。

要将可选大括号的偏好与所有其他 格式化和 语法样式规则一起应用于选定的代码块,请 Alt+Enter 并选择 重新格式化并清理 | 重新格式化&应用语法样式。

您可以在每次保存文件更改时应用大括号样式,以确保您的编辑始终符合代码样式。

在保存更改时自动应用大括号样式

  1. 从主菜单中选择 ReSharper | 选项 或按下 Alt+R O 。

  2. 转到清理配置文件设置页面: 代码编辑 | 代码清理 | 配置文件。

  3. 选择您的自定义代码清理配置文件并单击 设为默认 (默认配置文件也用于 静默清理)。

  4. 转到 代码编辑 | 代码清理 | 常规 选项页面并选择 保存文件时自动运行清理。

    或者,您可以通过文件掩码限制自动清理到特定文件。

    您还可以选择 仅文件的更改部分 以确保清理仅应用于受您更改影响的代码,而文件中的其余代码不会被修改。

    如果您选择仅清理文件的更改部分,您可以通过以下选项微调此行为:

    • 如果无法执行部分清理,则执行完全清理——根据此选项,ReSharper 将清理整个文件,或者如果无法将清理限制为文件的修改部分,则跳过该文件。

    • 允许在保存共享文件时进行清理——使用此选项启用或禁用对多次包含在解决方案中的文件(例如来自共享项目的文件)的部分清理。

  5. 单击对话框中的 保存 以应用修改,并让 ReSharper 选择保存位置,或者通过从 保存到 选择器中选择特定的设置层来保存修改。 有关更多信息,请参见 管理和共享 resharper 设置。

  6. 下次您完成编辑并保存文件( Ctrl+S )或所有文件( Ctrl+Shift+S )时,ReSharper 将使用所选配置文件清理受影响的文件。 如果未选择 默认清理配置文件 ,ReSharper 将提示您选择一个配置文件。

配置单层语句下的大括号偏好

您的大括号样式偏好是通过 基于层的设置机制保存的。 除此之外,此机制还允许您为不同的解决方案维护不同的偏好,并将这些偏好保存在 VCS 中并自动与您的团队成员共享。

配置大括号偏好

  1. 转到 ReSharper 选项 的 代码编辑 | C# | 语法样式 页面 Alt+R, O 。

  2. 根据您的编码实践/标准修改 大括号 类别中的设置。

  3. 右侧列中的 通知方式 选择器允许您设置 严重性级别 ,以检测与您的偏好设置不同的代码的 代码检查。

  4. 在 选项 对话框中点击 保存 以应用修改,让 ReSharper 选择保存位置,或者通过从 保存到 选择器中选择特定的设置层来保存修改。 有关更多信息,请参见 管理和共享 resharper 设置。

您还可以直接在编辑器中更改大括号偏好,其中会高亮显示相应的问题:

从编辑器更改大括号偏好

  1. 将插入符号放置在 一个 ReSharper 的检查突出显示的代码问题上。

  2. 按 Alt+Enter 或点击插入符号左侧的 操作指示器以打开 操作列表。

  3. In the action list, choose 检查 "使用或不使用大括号..." | 配置代码样式 and then select a preference:

    更改大括号的代码样式偏好
  4. 您的更改将使用 智能保存 逻辑保存。

  5. 如果您需要将修改后的样式偏好保存到 共享设置层中,请单击 配置代码样式 菜单项或在选中时按 输入 。 ReSharper 将打开 ReSharper 选项 的 代码编辑 | C# | 语法样式 页面,您可以根据需要修改偏好设置,单击 保存到 ,然后选择所需的设置层。

您可以通过 EditorConfig为所有语言以及通过 Clang-Format为 C++、JavaScript 和 TypeScript 配置语法样式设置。 这些设置可以存储在解决方案层次结构中不同级别的 .editorconfig 、 .clang-format 或 _clang-format 文件中。 这些文件通常放在 VCS 下,以便定义的设置在项目团队中共享。

ReSharper 允许您使用 EditorConfig 定义其 选项 对话框中可用的任何语法样式首选项。 您可以在 EditorConfig 参考中找到支持的 EditorConfig 属性的名称和描述。

至于 Clang-Format,ReSharper 只会应用 支持的 Clang-Format 选项。

需要注意的是,在 .editorconfig 文件中定义的任何语法样式属性都将覆盖 ReSharper 设置中定义的相同属性,适用于此 .editorconfig 文件的范围。 在 Clang-Format 中定义的格式化属性将覆盖 ReSharper 设置和 EditorConfig 设置。

使用 EditorConfig 配置大括号样式的偏好设置。

  1. 打开所需的 .editorconfig 文件。

  2. 将所需的 大括号样式属性添加到文件中。 例如:

    braces_for_ifelse = required_for_multiline
2026年 11月 6日