ReSharper 2025.2 Help

将自动属性设为仅可读

从 C# 6.0 开始,您可以定义仅 get 的自动属性,这些属性(类似于 只读字段 )只能通过构造函数或初始化器进行初始化。 ReSharper 会检测并帮助您移除在构造函数/初始化器中初始化且没有写入使用的自动属性上的冗余 设置 访问器。

修复自动属性仅可读

如果您不希望 ReSharper 提出此建议,您可以 禁用检测此问题的代码检查自动属性可以设为仅可读)。

反向功能也可用。 如果您决定在代码中稍后更改仅可读属性的值(这会导致编译器错误),ReSharper 会检测到错误并建议通过为该属性添加 setter 来修复它:

ReSharper:修复缺失的 setter

另一种批量将自动属性设为仅可读的选项是 代码清理。 您可以使用 内置:完全清理配置文件运行 代码清理 ,或者创建并运行 仅针对特定任务的自定义配置文件 ,如下所述。

移除仅具有读取访问权限的自动属性的 setter

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

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

  3. 按照 创建新的自定义清理配置文件 部分的描述创建一个新配置文件。 在新配置文件的 选定的配置文件设置 部分中,勾选 如果可能,将自动属性设为只获取 复选框。 可选地,您可以在此配置文件中启用其他代码清理任务。

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

  5. 选择您希望将自动属性设为仅可读的范围:

    • 将光标放在文件中的任意位置,以将自动属性设为仅可读。

    • 解决方案资源管理器 中选择一个或多个项目,以将自动属性设为仅可读到这些节点及其子项下的文件中。

  6. 执行以下操作之一:

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

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

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

  8. 单击 运行。 ReSharper 将在选定范围内将自动属性设为仅可读。

如果您希望在不打开 代码清理 对话框选择配置文件的情况下将自动属性设为仅可读,您可以将创建的配置文件绑定到 静默清理 ,并通过按 Control+Shift+Alt+F 运行它。 您还可以创建一个 自定义清理配置文件 ,将属性设为仅可读与其他代码样式任务结合起来。

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

语言:C#

语言:VB.NET

语言:C++

语言:ASP.NET

语言:Razor

语言:XAML

语言:Resx

语言:构建脚本

语言:SQL

此功能在 C# 中可用

此功能在 Visual Basic 中不可用

功能在 C++ 中不可用

此功能在 ASP.NET 中不可用

此功能在 Razor 中不可用

此功能在 XAML 中不可用

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

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

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

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