パラメーターのインライン化リファクタリング
このリファクタリングでは、メソッドのパラメーターをメソッド呼び出しの引数の値に置き換えることができます。複数のコールがある場合は、引数を取るためにコールを選択できます。
単純なケース。パラメーター pi の定数値のインライン展開:
インライン化する引数が他の変数や計算に依存する場合、ReSharper は元のパラメーターを他のパラメーターに置き換え、ターゲットメソッド内で計算を移動できます。
次の例では、コールで引数として使用されたラムダ全体がメソッド本体に移動し、必要な値を渡すために 2 つの新しいパラメーターが作成されるように、PerformAction メソッドの action パラメーターにリファクタリングを適用します。
パラメーターをインライン化する
キャレットをメソッド宣言のパラメーターまたはメソッド呼び出しの引数に配置します。
以下のいずれか 1 つを実行します:
Control+Alt+N を押し、次にパラメーターのインライン化を選択します。
Control+Shift+R を押し、パラメーターのインライン化を選択します。
右クリックして、コンテキストメニューからリファクタリング | パラメーターのインライン化を選択します。
メインメニューから を選択します。
パラメーターのインライン化ダイアログが開きます。
メソッドに複数の使用箇所がある場合は、引数をインライン化する使用箇所を選択し、次へをクリックします。
インライン化するパラメーターを選択します。
インライン引数が他の変数に依存している場合、ReSharper は、新しい議論フィールドで呼び出し元からの 1 つ以上の変数を提案します。目的の引数を選択します。
新しい署名のプレビューを確認し、次へをクリックします。
競合が見つからない場合、ReSharper はすぐにリファクタリングを実行します。それ以外の場合は、競合を解決するように求められます。
この機能は、次の言語とテクノロジーでサポートされています。
ここで説明する手順と例では、C# の機能の使用について説明します。他の言語の詳細については、言語およびフレームワークセクションの対応するトピックを参照してください。
関連ページ:
「パラメーターの導入」リファクタリング
このリファクタリングでは、新しいパラメーターを追加することにより、メソッド実装からその呼び出し元に式を移動できます。式のすべての出現箇所が新しいパラメーターに置き換えられます。ソリューション内のメソッドへのすべての呼び出しは、新しい引数で更新されます。以下の例では、このリファクタリングを使用して、同じ文字列の 2 つの出現箇所をパラメーターに置き換えます。文字列自体は呼び出し元の引数に移動されます。abstract class Shape { public void Draw() { try {...
リファクタリングの競合を解決する
ReSharper のすべてのリファクタリングはソリューション全体に適用されるため、多くのファイルが影響を受ける可能性があり、一部の変更は既存のコードと競合する可能性があります。競合がある場合、ReSharper はそれらを検出し、リファクタリングウィザードの最後のページに競合のリストを表示します。例: 安全な削除リファクタリングをメソッドに適用するときに表示されるいくつかの競合を次に示します。競合には 2 つの型があります。コンパイルを中断することなく削除できる使用箇所は、アイコンでマークされて...
さまざまな言語の ReSharper 機能
以下の表は、ReSharper の各機能がどの言語 / テクノロジーでサポートされているかを説明しています。言語固有の機能のみを記載しており、プロジェクト依存関係ダイアグラム、名前空間の調整リファクタリング、スタックトレースエクスプローラー、最近使用したファイルの表示など、プロジェクト / ソリューションスコープに関する多くの機能は含まれていません。コード解析:コードインスペクション
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 ダイアレクトの構成メインメニューからを選択するか、...