JetBrains Rider 2025.2 Help

将方法/属性转换为静态的重构

此重构允许您将实例方法或属性转换为静态的。 所有调用、实现和重写都会自动更正。

如果转换的实例方法使用了实例成员,JetBrains Rider 会帮助您添加表示 this 的必要参数以应用这些用法。 如果转换的实例属性使用了实例成员,则无法进行此重构。

在下面的示例中,我们使用此重构将 信息 类的实例方法 合并 转换为静态方法。 重构后,实例属性 ID名称 的用法被应用到新的参数 i1

class Info { string Id { get; set; } string Name { get; set; } Info Merge(Info other) { return new Info { Id = Id + other.Id, Name = Name + other.Name }; } void Test() { var i1 = new Info() { Id = "123", Name = "AA" }; var i2 = new Info() { Id = "456", Name = "BB" }; var merged = i1.Merge(i2); } }
class Info { string Id { get; set; } string Name { get; set; } static Info Merge(Info info, Info other) { return new Info { Id = info.Id + other.Id, Name = info.Name + other.Name }; } void Test() { var i1 = new Info() { Id = "123", Name = "AA" }; var i2 = new Info() { Id = "456", Name = "BB" }; var merged = Merge(i1, i2); } }

将方法或属性转换为静态

  1. 将光标放在编辑器中实例方法或属性的声明或用法处,或者在 结构窗口 窗口中选择它。

  2. 请执行以下操作之一:

    • Ctrl+Alt+Shift+T 然后选择 设为静态

    • 在主菜单中选择 重构 | 设为静态

    设为静态 对话框将打开。

  3. 如果方法使用了实例成员,建议选择选项 将 'this' 添加为 [type name] 的参数。 在这种情况下,JetBrains Rider 会添加必要的参数以应用这些用法。 如果需要,您可以选择不添加参数,或者仅将参数应用于部分实例成员的用法。 在这些情况下,重构后您可能需要手动更正静态上下文中无效的实例用法。

  4. 要应用重构,请点击 下一步

  5. 如果未发现冲突,JetBrains Rider会立即执行重构。 否则,它会提示您 解决冲突

JetBrains Rider。 “转换为静态”重构
最后修改日期: 2025年 9月 26日