ReSharper 2025.2 Help

代码语法样式:默认值表达式('default' 与 'default(T)')

当您使用 类型的默认值默认值表达式 进行评估时,如果类型可以推断,您可以使用 default(T) 运算符或 default 表达式。

换句话说,当类型可以推断时, (T) 类型说明是可选的, default

根据上下文,可选的类型说明可能会使代码因冗余信息而显得杂乱,或者相反,提高可读性。

因此,ReSharper 提供了两种默认值表达式的代码样式偏好:

  • 当类型从使用中显而易见时(例如,在参数声明或字段初始化中)。

  • 当类型不明显时(例如,在方法调用参数或返回语句中)。

ReSharper 帮助您在现有代码中强制执行默认值表达式的样式偏好,并在使用 代码补全代码生成 功能生成新代码时考虑您的偏好,应用 代码模板 并执行 重构

强制执行默认值表达式的偏好设置

默认情况下,ReSharper 将类型说明标记为冗余并帮助删除它们:

ReSharper 语法样式检查:使用 'default' 字面量

如果您更喜欢在代码中显式指定类型说明,您可以 更改相应的偏好设置 ,ReSharper 将帮助您添加缺失的类型说明:

ReSharper 语法样式检查:指定类型

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

使用自定义代码清理配置文件应用默认值样式

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

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

  3. 按照 创建新的自定义清理配置文件 部分的描述创建一个新配置文件。 在新配置文件的 选定的配置文件设置 部分中,勾选 应用默认值样式('default' 与 'default(T)') 复选框。 可选地,您可以在此配置文件中启用其他代码清理任务。

  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 设置

在不同语言中的适用性

此功能在以下语言和技术中 受支持

语言:C#

语言:VB.NET

语言:C++

语言:ASP.NET

语言:Razor

语言:XAML

语言:Resx

语言:构建脚本

语言:SQL

此功能在 C# 中可用

此功能在 Visual Basic 中不可用

功能在 C++ 中不可用

此功能在 ASP.NET 中不可用

此功能在 Razor 中不可用

此功能在 XAML 中不可用

此功能在资源文件中不可用

此功能在构建脚本文件中不可用

此功能在 SQL/NoSQL 文件和注入中不可用

最后修改日期: 2025年 9月 27日