ReSharper 2019.3ヘルプ

ASP.NETのリファクタリング

ASP.NETでは、ReSharperは、ASP.NETファイル内のC#およびVB .NETコードで利用可能なのメインセットリファクタリング、およびリソースの用途で利用可能なローカライズリファクタリングをサポートしています。ASP.NETに固有のいくつかのリファクタリングもあります。

リファクタリングを実行する

  1. キャレットをシンボルに設定するか、リファクタリングするコードフラグメントを選択するか、ツールウィンドウで項目を選択します。

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

    • メインメニューでReSharper | リファクタリング を選択してから、必要なリファクタリングを選択します。このメニューで利用可能なリファクタリングのリストは現在の状況に依存します。ReSharperがコンテキストのリファクタリングを提案できない場合は、メニュー全体が無効になります。

    • エディター、ファイル構造ウィンドウ、またはその他のReSharperウィンドウで、変換したい項目を右クリックし、コンテキストメニューからリファクタリングを選択してから、必要なリファクタリングを選択します。

    • メインメニューでReSharper | リファクタリング | リファクタリングを選択するか、Ctrl+Shift+R を押して適用可能なリファクタリングのリストを表示し、それらのいずれかを選択します。選択のコンテキストメニューでリファクタリングを選択することもできます。

    • 特定のリファクタリングに割り当てられたデフォルトのキーボードショートカットを使用するか、お気に入りのリファクタリングコマンドにカスタムショートカットを割り当てます。

  3. 選択したリファクタリングにユーザー入力が必要な場合は、リファクタリングウィザードが開きます。ウィザードのダイアログはモーダルではないため、ウィザードが開いている間にコードを編集できます。

    リファクタリングアクションをロールバックするために、ウィザードにはオプション元に戻すを有効にするには、変更のあるすべてのファイルを編集用に開きますが用意されています。このオプションを選択すると、ReSharperは変更されたすべてのファイルを新しいエディタータブで開き、リファクタリングをロールバックできます。この場合、変更を自分で保存する必要があります。このオプションが選択されていない場合、ReSharperは変更されたファイルを開かずに自動的に保存します。

  4. リファクタリング操作によってコードの競合(名前の重複、可視性の競合など)が発生する場合、リファクタリングを適用する前に、ウィザードは最後のステップで競合のリストを表示します。一部の競合については、ウィザードでクイックフィックスを提案することもできます。詳細については、競合を解決するリファクタリングを参照してください。

エディターでコードを変更した直後に利用できるリファクタリングもあります。詳しくは、インプレース・リファクタリングを参照してください。

スタイル抽出

このリファクタリングでは、<style> タグで定義されているスタイルと同様にインラインスタイルを抽出し、指定されたセレクタに配置できます。

Extract Style refactoring in HTML

リファクタリングウィザードでは、必要に応じてセレクタを変更し、抽出するスタイルを選択することができます。

Extract Style refactoring in HTML

リソースに移動

ASP.NETでは、明示的な言語選択に応じてコンテンツを変更できるページを作成することができます。コンテンツやその他のデータはリソースファイルに保存され、適切なリソース式を使用して簡単にアクセスできます。マークアップに隠された文字列やテキストがある場合、ReSharperはそれらを見つけて、不必要な合併症なしに適切なリソースファイルに正確に転送できます。

ReSharper: Move to resource refactoring in ASP.NET

通常どおり、Ctrl+Shift+R を押すだけで、使用可能なすべてのリファクタリングのリストが表示され、目的のリファクタリングを選択することができます。

名前変更

手動で行うときの最も素晴らしいと同時に最も厄介なアクションの1つは、名前変更リファクタリングです。このリファクタリングは、シンボルとタイプの名前を変更する簡単な方法を提供し、リファクタリングがどこで呼び出され、どの言語が使用されるかは関係ありません。そのため、JavaScript関数の名前を変更し、C#メソッド、クラス、または名前空間の名前を変更し、すべての使用箇所がそれに応じて更新されることを確認できます。マークアップでコントロール識別子の値を変更して、すべての参照がどこでも更新されるようにすることもできます。

ReSharper: Rename refactoring in ASP.NET

安全なリソース削除

一部のリソースが役に立たないことに気付くとすぐに、安全なリソース削除リファクタリングを呼び出してすぐに削除することができます。

ReSharper: Safe delete resource refactoring in ASP.NET
詳しくは、ローカライゼーションリファクタリングを参照してください。

最終更新日: 2019年12月12日

関連ページ:

のメインセットリファクタリング

このセクションでは、C#でサポートされているリファクタリングを調べることができます。これらのリファクタリングのほとんどは、Visual Basic .NETやその他の言語でもサポートされています。リファクタリングに加えて、ReSharperはコンテキスト・アクションで利用可能ないくつかの小さなローカ...

コンテキスト・アクション

コンテキストアクションのいくつかの例をReSharperWebサイトでチェックすることができます。コンテキストアクションは、エディターで直接利用できるコード変換ヘルパーです。クイックフィックスとは対照的に、コンテキストアクションは問題の解決やコードの改善を目的としているためはなく、アクセス修飾子の変...

ファイル構造ウィンドウ

ReSharperでは、ファイル構造ウィンドウを使って現在のドキュメントの構造をナビゲートすることができます。これは大きなファイルでのナビゲーションを非常に簡単にします。ウィンドウはエディターと同期しています。別のエディタータブに切り替えると、ウィンドウには対応するファイルの構造が表示されます。ファ...

キーボードショートカットを構成する

すべてのReSharperアクションは、キーボードショートカットで呼び出すことができます。ほとんどのアクションには既定のショートカットがあり、そのまま使用できます。残りのアクションでは、必要に応じて、好きなショートカットキーを割り当てることができます。ReSharperは2つのデフォルトのキーボード...

リファクタリングで競合を解決

ReSharperのすべてのリファクタリングはソリューション全体に適用されるため、多くのファイルが影響を受ける可能性があり、一部の変更は既存のコードと競合する可能性があります。競合がある場合、ReSharperはそれらを検出し、リファクタリングウィザードの最後のページに競合のリストを表示します。例:...

インプレース・リファクタリング

一部のリファクタリングは、コマンドを呼び出さずに適用できます。エディターでコードを変更するだけで十分です。変更がコードをリファクタリングするためのインテンションである可能性があることをReSharperが検出すると、変更されたコードの周囲に灰色の境界線が表示され、対応するアクションインジケーターが左...