変数のインライン化リファクタリング
このリファクタリングでは、コード内の変数のすべてをその初期化子で置き換えることができます。リファクタリングは、初期化後に変数値が変更されない場合にのみ適用される必要があることに注意してください。
以下の例では、このリファクタリングを使用して reversed 変数をインライン展開します。
変数をインライン化する
宣言にキャレットを置くか、エディターに変数を使用します。
以下のいずれか 1 つを実行します:
Control+Alt+N を押し、次に変数のインライン化を選択します。
Control+Shift+R を押し、変数のインライン化を選択します。
右クリックして、コンテキストメニューからリファクタリング | 変数のインライン化を選択します。
メインメニューから を選択します。
競合が見つからない場合、ReSharper はすぐにリファクタリングを実行します。それ以外の場合は、競合を解決するように求められます。
この機能は、次の言語とテクノロジーでサポートされています。
ここで説明する手順と例では、C# の機能の使用について説明します。他の言語の詳細については、言語およびフレームワークセクションの対応するトピックを参照してください。
関連ページ:
変数の導入リファクタリング
このリファクタリングでは、選択した式に基づいて新しいローカル変数または定数を作成し、式で初期化し、最後にメソッドの式のすべてを新しく導入した変数への参照に置き換えることができます。以下の例では、このリファクタリングを使用して、同じ文字列の 2 つの出現箇所を変数に置き換えます。static void LogError(Exception ex) { Console.WriteLine(
リファクタリングの競合を解決する
ReSharper のすべてのリファクタリングはソリューション全体に適用されるため、多くのファイルが影響を受ける可能性があり、一部の変更は既存のコードと競合する可能性があります。競合がある場合、ReSharper はそれらを検出し、リファクタリングウィザードの最後のページに競合のリストを表示します。例: 安全な削除リファクタリングをメソッドに適用するときに表示されるいくつかの競合を次に示します。競合には 2 つの型があります。コンパイルを中断することなく削除できる使用箇所は、アイコンでマークされて...
ASP.NET MVC 特有の機能
ReSharper には、一般的な ASP.NET 機能に加えて、ASP.NET MVC での作業をより簡単にサポートする特殊機能があります。構文のハイライト:ASP.NET MVC メソッド呼び出しとパラメーターの特別な構文のハイライト: コード補完:文字列リテラルでアクションとコントローラーを参照するための専用コード補完: ナビゲーションと検索:さまざまなナビゲーション機能がアクションとコントローラーでも機能します。コード生成:使用箇所から新しいコントローラーとアクションを作成する:20...
言語による ReSharper: MSBuild
MSBuild は、アプリケーションを構築するために広く使用されているプラットフォームです。特定の XML タグを使用して、プロジェクトの構築方法や実行方法を定義できます。ReSharper を使用すると、より速く行うことができます。コード検査:あらかじめ定義された要素またはその属性の名前を誤って入力した場合、ReSharper はそのような不一致についてハイライト表示します。まだ定義されていないプロパティを参照しようとすると、ReSharper はそのようなケースも検出します。MSBuild...
言語による ReSharper: SQL と NoSQL
このセクションには、SQL のようなファイルの ReSharper 機能と C# 文字列の SQL インジェクションに関する情報が含まれています。使用するデータベースによっては、ソリューション内に異なるダイアレクト(DBMS 固有の SQL バージョン)の SQL ファイルが存在する場合があります。各 SQL ファイルで構文のハイライト、コード補完、コードインスペクションが正しく機能するには、SQL ダイアレクトを設定する必要があります。SQL ダイアレクトの構成メインメニューからを選択するか、...
フィールドの導入リファクタリング
このリファクタリングでは、選択した式に基づいて新しいフィールドを作成し、式またはコンストラクターで初期化し、現在の型の式の出現を新しく導入されたフィールドへの参照に置き換えることができます。以下の例では、このリファクタリングを使用して、同じ文字列の 2 つの出現箇所を新しい定数フィールドに置き換えます。class ErrorHandler { public static void LogError(Exception e) { File.WriteAllText(@