JetBrains Rider 2026.1 Help

「パラメーターの導入」リファクタリング

このリファクタリングでは、メソッドの実装から呼び出し側に式を移動するために新しいパラメーターを追加できます。 式のすべての出現箇所が新しいパラメーターに置き換えられ、ソリューション内のメソッド呼び出しも新しい引数で更新されます。

以下の例では、このリファクタリングを使用して、同じ文字列の 2 つの出現箇所をパラメーターに置き換えます。 文字列自体は呼び出し元の引数に移動されます。

abstract class Shape { public void Draw() { try { /*draw*/ } catch (Exception e) { LogError(e); } } static void LogError(Exception ex) { Console.WriteLine("Something has failed..."); File.WriteAllText(@"c:\Error.txt", "Something has failed..." + ex); } }
abstract class Shape { public void Draw() { try { /*draw*/ } catch (Exception e) { LogError(e, "Something has failed..."); } } static void LogError(Exception ex, string message) { Console.WriteLine(message); File.WriteAllText(@"c:\Error.txt", message + ex); } }

パラメーターとして渡したい式がメソッド本体で宣言された参照変数を参照している場合、JetBrains Rider では汎用デリゲートパラメーターを導入し、呼び出し元からラムダ式を渡すことで、これらの変数を「enlambda」できます。 以下の例では、 "The current time is: " + currentTme 式のリファクタリングを呼び出します。

static void PrintCurrentTime() { var currentTme = DateTime.Now.ToString("h:mm:ss tt"); Console.WriteLine("The current time is: " + currentTme); } private void Test1() { PrintCurrentTime(); }
static void PrintCurrentTime(Func<string, string> output) { var currentTme = DateTime.Now.ToString("h:mm:ss tt"); Console.WriteLine(output(currentTme)); } private void Test1() { PrintCurrentTime(currentTme => "The current time is: " + currentTme); }

選択した式のパラメーターを導入する

  1. エディターで、メソッドまたはコンストラクター内の式を選択します。

  2. 次のいずれかを実行します:

    • Ctrl+Alt+P を押します。

    • Ctrl+Alt+Shift+T を押し、を パラメーターの導入 を選択します。

    • メインメニューから リファクタリング | パラメーターの導入 を選択します。

  3. 選択した式が複数見つかった場合、JetBrains Rider では、リファクタリングをすべての箇所に適用するか、現在の箇所のみに適用するかを選択できます。

  4. 表示される パラメーターの導入 ダイアログで、新しいパラメーターの名前を入力します。

  5. 選択した式が定数であるか値型である場合は、その式を導入されたパラメーターのデフォルト値として使用できます。 そうするには、 デフォルトにする​ チェックボックスを選択します。

  6. 選択した式が他の変数に依存する場合、これらの変数は enlambda する変数を選択する セクションに表示されます。 ジェネリクスデリゲートで使用する変数を選択します(この場合はパラメーターとして追加されます)。

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

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

JetBrains Rider: 「パラメーターの導入」リファクタリング
2026 年 6 月 12 日