JetBrains Rider 2026.1 Help

メソッド / プロパティを静的にするリファクタリング

このリファクタリングでは、インスタンスメソッドまたはプロパティを静的インスタンスメソッドまたはプロパティに変換できます。 すべての呼び出し、実装、上書きが自動的に修正されます。

変換されたインスタンスメソッドがインスタンスメンバーを使用する場合、JetBrains Rider はこれらの使用箇所を適用する this を表す必要なパラメーターの追加を支援します。 変換されたインスタンスプロパティがインスタンスメンバーを使用する場合、リファクタリングは使用できません。

以下の例では、このリファクタリングを使用して、 情報 クラスのインスタンスメソッド Merge を静的メソッドに変換します。 リファクタリングの後、インスタンスプロパティ Id および Name の使用が新しいパラメーター 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 を押し、を static にする を選択します。

    • メインメニューから リファクタリング | 静的にする を選択します。

    static にする ダイアログが開きます。

  3. メソッドでインスタンスメンバーを使用する場合は、オプション [ 型名 ] のパラメーターとして 'this' を追加する を選択することをお勧めします。 この場合、JetBrains Rider はこれらの使用箇所を適用するために必要なパラメーターを追加します。 必要に応じて、パラメーターを追加せずに実行するか、インスタンスメンバーの使用の一部にパラメーターを適用できます。 これらの場合、リファクタリング後、静的コンテキストでのインスタンスの無効な使用箇所を手動で修正する必要がある場合があります。

  4. リファクタリングを適用するには、 次へ をクリックします。

  5. 競合するものが見つからない場合、JetBrains Rider はすぐにリファクタリングを実行します。 それ以外の場合は、 競合を解決するように求められます。

JetBrains Rider. 「静的にする」リファクタリング
2026 年 6 月 12 日