ReSharper 2024.3 ヘルプ

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

ASP.NET では、ReSharper は、ASP.NET ファイル内の C# および VB .NET コードで使用できるリファクタリングのメインセットと、リソースの使用に使用できるローカライゼーションリファクタリングをサポートしています。このトピックでは、ASP.NET に固有のリファクタリングを一覧表示します。

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

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

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

    • メインメニューから ReSharper | リファクタリングを選択し、目的のリファクタリングを選択します。このメニューで使用できるリファクタリングのリストは、現在のコンテキストによって異なります。ReSharper がコンテキストのリファクタリングを提案できない場合、メニュー全体が無効になります。

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

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

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

  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

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

名前変更

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

ReSharper: Rename refactoring in ASP.NET

安全なリソース削除

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

ReSharper: Safe delete resource refactoring in ASP.NET

詳細は、ローカライゼーションリファクタリングを参照してください。

関連ページ:

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

このセクションでは、C# でサポートされているリファクタリングについて学習できます。これらのリファクタリングのほとんどは、Visual Basic やその他の言語でもサポートされています。シグネチャーの変更、抽象クラスをインターフェースに変換、匿名から名前付き型に変換、拡張メソッドをプレーンスタティックに変換、インデクサーをメソッドに変換、インターフェースを抽象クラスに変換、メソッドをインデクサーに変換、メソッドをプロパティに変換する、プロパティを自動プロパティに変換、プロパティをメソッドに変換...

ローカライゼーションリファクタリング

ReSharper は、プロジェクトの国際化を大幅に簡素化する一連のリソース関連のリファクタリングを提供します。リソースに移動:プロジェクトの内部化に取り組むときは、ローカライズ可能な文字列をリソースファイルに格納するのが一般的です。ReSharper はローカライズ対象の文字列を検出してハイライトするため、そのような文字列を簡単に見つけてソースコードからリソースファイルに移動できます。ReSharper は対応するリソースエントリを宣言し、コード内の文字列をリソース使用量に置き換えます。ロー...

コンテキストアクション

コンテキストアクションは、エディターで直接利用できるコード変換ヘルパーです。クイックフィックスとは対照的に、コンテキストアクションは問題の解決やコードの改善を目的としているためはなく、アクセス修飾子の変更、null をチェックするコードの生成、'foreach' の 'for' への変換などの小さな変更をすばやく導入できます。ReSharper は、サポートされているすべての言語で数百のコンテキストアクションを提供します。完全なリストは、ReSharper オプション Alt+R, O のページとコ...

構造別にファイルを移動する

ファイル構造ウィンドウ:ReSharper では、ファイル構造ウィンドウを使用して現在のドキュメントの構造を移動でき、大きなファイルでのナビゲーションが大幅に簡素化されます。ウィンドウはエディターと同期されます。別のエディタータブに切り替えると、ウィンドウには対応するファイルの構造が表示されます。ファイル構造ウィンドウを開いて使用するを押すか、メインメニューからを選択します。あるいは、を押して、ポップアップでコマンド名を入力して、そこで選択することもできます。現在のドキュメントの内容はツリー

キーボードショートカットを設定する

すべての ReSharper アクションは、キーボードショートカットで呼び出すことができます。ほとんどのアクションには既定のショートカットがあり、そのまま使用できます。残りのアクションでは、必要に応じて、好きなショートカットキーを割り当てることができます。ReSharper は、2 つのデフォルトのキーボードショートカットスキームを提供します。Visual Studio — このスキームは、Visual Studio 独自のキーボードショートカットとの競合を最小限に抑えることを目的としています。I...

リファクタリングの競合を解決する

ReSharper のすべてのリファクタリングはソリューション全体に適用されるため、多くのファイルが影響を受ける可能性があり、一部の変更は既存のコードと競合する可能性があります。競合がある場合、ReSharper はそれらを検出し、リファクタリングウィザードの最後のページに競合のリストを表示します。例: 安全な削除リファクタリングをメソッドに適用するときに表示されるいくつかの競合を次に示します。競合には 2 つの型があります。コンパイルを中断することなく削除できる使用箇所は、アイコンでマークされて...