JetBrains Rider 2020.2 ヘルプ

フィールドリファクタリングの導入

リファクタリング | 抽出 / 紹介 | フィールドの導入 ...
Ctrl+Alt+F

このリファクタリングでは、選択した式に基づいて新しいフィールドを作成し、式またはコンストラクターで初期化し、現在のタイプの式の出現を新しく導入されたフィールドへの参照に置き換えることができます。

以下の例では、このリファクタリングを使用して、同じ文字列の 2 つの出現箇所を新しい定数フィールドに置き換えます。

class ErrorHandler { public static void LogError(Exception e) { File.WriteAllText(@"c:\Error.txt", "Something has failed" + e); } public static void PrintError(Exception e) { Console.WriteLine("{0} : {1}", "Something has failed", e); } }
class ErrorHandler { private const string ErrorMessage = "Something has failed"; public static void LogError(Exception e) { File.WriteAllText(@"c:\Error.txt", ErrorMessage + e); } public static void PrintError(Exception e) { Console.WriteLine("{0} : {1}", ErrorMessage, e); } }

フィールドを紹介する

  1. エディターで式を選択します。

  2. 以下のいずれか 1 つを実行します :

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

    • Ctrl+Alt+Shift+T を押し、次にフィールドの導入を選択します。

    • メインメニューのリファクタリング | フィールドの導入を選択します。

  3. フィールドの導入ダイアログが開きます。新しいフィールドの名前を指定し、アクセス修飾子を選択します。必要に応じて、フィールドに static および readonly 修飾子を追加するかどうかを指定します。

  4. フィールドの初期化方法を選択します。

    • 現在のメンバー : 現在のメンバーのフィールドを初期化します(このオプションは、単一の出現箇所を置き換えることを選択した場合、またはすべての出現箇所が現在のメンバー内にある場合にのみ使用可能です)。

    • フィールドイニシャライザ : 宣言内のフィールドを初期化します。

    • コンストラクター : 含むクラスの 1 つまたは複数のコンストラクター内のフィールドを初期化します。コンストラクターがない場合は、フィールドを初期化するためのパラメーターなしのコンストラクターが作成されます。

    • 定数を導入する : 定数フィールドを作成します。このオプションは、選択した式の値が組み込み型に対応している場合にのみ使用できます。

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

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

JetBrains Rider: Introduce Field refactoring
最終更新日 :