ReSharper 2025.3 Help

生成类型构造函数

构造函数生成向导会创建一个非默认构造函数,该构造函数接受选定字段、属性和自动属性的参数。

所有生成的构造函数都遵循相同的模式,其中:

  • 构造函数中包含的每个字段、属性或自动属性都使用参数进行初始化。

  • 参数的名称来源于对应字段或属性的名称。

如果存在非默认的基类型构造函数,则所需的参数会添加到生成的构造函数中,并传递给基类构造函数。

在下面的示例中,此命令用于生成一个新的 Circle 构造函数,该构造函数接受两个额外的参数来初始化 _radius_center 字段。

生成前

生成后

class Shape { public Shape(Color color) { Color = color; } public Color Color { get; } } class Circle : Shape { int _radius; Point _center; string _id; public Circle(Color color) : base(color) { } }
class Shape { public Shape(Color color) { Color = color; } public Color Color { get; } } class Circle : Shape { int _radius; Point _center; string _id; public Circle(Color color) : base(color) { } public Circle(Color color, int radius, Point center, string id) : base(color) { _radius = radius; _center = center; _id = id; } }

生成构造函数

  1. 在编辑器中,将插入符号放置在类型名称处或类型内您希望插入构造函数的行上。 如果插入点位于类型名称处,则生成的代码将添加到类型声明的开头。

  2. Alt+Insert 或从主菜单中选择 ReSharper | 编辑| 生成代码…。 或者,您可以按 Control+Shift+A ,开始在弹窗中输入命令名称,然后从中选择它。

  3. 生成 弹出窗口中,选择 构造函数

  4. 在出现的 生成 对话框中,选择应在新构造函数中初始化的类型成员。 可选地,选择一个或多个基类构造函数。 对于每个选定的基类构造函数,将生成一个新的构造函数,该构造函数将调用基类并另外初始化选定的成员。

    使用 ReSharper 生成类型构造函数

    可选地,在对话框中使用以下控件:

    • 访问权限 — 允许您定义生成的构造函数的访问权限。

    • 检查参数是否为空值 (当类具有可空类型的字段或属性时出现)— 如果选中此复选框,ReSharper 将为每个可空参数 生成可配置的空值检查 ,例如: if (param == null) throw new ArgumentNullException(nameof(param));

    • 将形参设为可选 — 如果选中此复选框,ReSharper 将使生成的构造函数的所有参数为可选,并添加与参数类型对应的默认值。

  5. 单击 完成 以完成向导。

    您还可以单击 选项 在 ReSharper 选项的 代码编辑 | 成员生成 页面上查看或修改通用代码生成偏好。

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

语言:C#

语言:VB.NET

语言:C++

语言:ASP.NET

语言:Razor

语言:XAML

语言:Resx

语言:构建脚本

语言:SQL

功能在 C# 中可用

此功能适用于 Visual Basic

功能在 C++ 中可用

功能在 ASP.NET 中不可用

功能在 Razor 中不可用

功能在 XAML 中不可用

此功能不适用于资源文件

此功能不适用于构建脚本文件

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

此处提供的说明和示例介绍了在 C# 中使用该功能。 有关其他语言的更多信息,请参阅 语言和框架 部分中的相关主题。

最后修改日期: 2025年 12月 8日