ReSharper 2025.2 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年 9月 27日