ReSharper 2026.1 Help

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

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

以下の例では、このリファクタリングを使用して、同じ文字列の 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. 次のいずれかを実行します。

    • Control+Alt+D を押します。

    • Control+Shift+R を押し、を フィールドの導入 を選択します。

    • 右クリックして、コンテキストメニューから リファクタリング | フィールドの導入 を選択します。

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

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

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

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

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

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

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

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

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

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

この機能は、次の言語とテクノロジーで サポートされています。

言語: C#

言語: VB.NET

言語: C++

言語: ASP.NET

言語: Razor

言語: XAML

言語: Resx

言語: スクリプトの作成

言語: SQL

この機能は C# で利用可能です

この機能は Visual Basic で利用可能です

C++ にフィールドを導入

この機能は ASP.NET では使用できません

この機能は Razor では使用できません

機能は XAML では使用できません

機能はリソースファイルでは使用できません

機能はビルドスクリプトファイルでは使用できません

機能は SQL/NoSQL ファイルおよびインジェクションでは利用できません

ここで説明する手順と例では、C# の機能の使用について説明します。 他の言語の詳細については、 言語およびフレームワーク セクションの対応するトピックを参照してください。

2026 年 6 月 12 日