ReSharperはコード解析、コーディング支援、ナビゲーション、コード生成機能を ひとまとめに提供して、マークアップファイルを含むASP.NETプロジェクトおよびASP.NET MVC プロジェクトでの作業を効率化します。 それらの機能の中には、C#プロジェクトやVB.NETプロジェクトの場合と全く同じようにウェブアプリケーションで 動作するものもあれば、ウェブ開発の特定の要件に合わせて微調整されているものもあります。
ASP.NETマークアップやコードビハインドファイルで使用されるC#コードを扱う際、あらゆる種類のコードインスペクションやクイックフィックスを含むReSharperの機能をすべて使用することができます。 また、ASP.NET固有の インスペクションやクイックフィックスもあります。たとえば、ReSharperはaspx ページ内にある未使用の名前空間のインポート、不明なシンボルやエンティティを検出します。
ASP.NETマークアップファイルでもマーカーバーとステータスインジケーターを使用し、ReSharperが発見したコードの問題を渡り歩くことができます。
ReSharperは一般的なASP.NETマークアップのシナリオに役立つ多数のコンテキストアクションを提供しています。
例えば、ASP.NETのコンテキストアクションを使うと、タグの置換・折りたたみ・削除、HTMLエンティティの変換、イベント・関数・プロパティの作成、テーブルの行や列の挿入、コードビハインドファイルの追加などが行えます。
ASP.NETではReSharperの多くのナビゲーション機能を使用できます。
例えば、現在開いているaspxファイルのマークアップ項目の概要を取得するには、Ctrl+Alt+Fを押してFile Structureツールウィンドウを表示してください。 Go to File Member、Go to Next/Previous Member、およびGo to Containing DeclarationのようなFile Structureに派生する機能も自由にお使いいただけます。
ASP.NETプロジェクトで役に立つその他のナビゲーションアクションには、特に参照からユーザーコントロールやマスターページへの移動に役立つGo to Declaration、ContentPlaceHolder
タグから対応するContent
タグ、またはマスターページの参照からそれを使用しているすべてのウェブフォームへの移動に役立つGo to Usages of Symbolがあります。
Go to Related Files(関連ファイルに移動)(Ctrl+Alt+F7)は、コードビハインドファイル、マスターページ、ユーザーコントロール、画像、ASP.NET MVC ビューやコントローラーなどの参照先に移動できるウェブ固有の移動操作です。
C#またはVB.NETを使用しているaspxページでインラインコードブロックを使用する際、ReSharperのシンタックスハイライトが役に立ちます。
ReSharperでは、ASP.NETやASP.NET MVCの開発者は20種類のウェブに特化したバンドルテンプレートを使用してウェブフォーム、タグ、属性を生成することができます。
foreach
ブロックで囲むのに役立ちます。 ReSharperは参照先マスターページで定義されているContentPlaceHolder
タグに基づいて、マークアップページのContent
タグを生成することができます。
また、ASP.NETのコードビハインドファイルのイベントサブスクリプションメソッドを生成する機能もあります。
エディタ内でAlt+Insを押すと、これらの機能や、現在のコンテキストで使用できる一般的なC#およびVB.NETのコード生成機能を呼び出せます。
コード補完(スマート補完を含む)はタグ名と属性値の補完に対応しています。 インポートシンボル補完は、事前に登録されていない未インポートのユーザーコントロールを参照するのに役立ちます。ReSharperはRegister
ディレクティブを自動生成します。
自動登録と言えば、ReSharperは他の種類のプロジェクトと同じように、ユーザーコントロールを使用するとそれをすぐに自動登録し、型を使用するとすぐにそれが属する名前空間をすべて自動インポートします。
ReSharperは開始タグを入力した場合は対応する終了タグを、属性値の開始引用符を入力した場合は終了引用符をすぐに自動挿入します。 それだけでなく、それらのいずれかにキャレットを置くと、対応する区切り文字がハイライトされます。
タグの階層が深い場合は、Extend/Shrink Selectionを使ってタグの選択範囲を狭めたり広げたりできます。 選択範囲は、上下(タグの場合)または左右(属性の場合)に移動できます。
ローカライズが必要な、aspxページにHTMLマークアップがある場合は、それを選択し、Alt+Enterを押すと該当文字列をリソースファイルに移動できます。 ただし、これはReSharperが提供する国際化機能のほんの一部に過ぎません。
ReSharperはASP.NET MVCプロジェクト固有の機能セットを提供しています。
上記の機能やコントローラのコーディングに役立つ一般的なC#/VB.NET向けの支援機能のほか、アクションやコントローラ間の移動、文字列リテラルのアクション参照を認識する専用のシンタックスハイライトとコード補完、使用箇所からのアクションとコントローラの作成その他をaspxビューエンジンとRazorビューエンジンの両方で利用できます。
ReSharperは、ASP.NET Coreプロジェクトのプロジェクト参照やタグヘルパーの構文を認識し、リファクタリング、コードインスペクション、ナビゲーション、コード補完などの基本的な機能セットを提供します。 ユニットテスト支援はVisual Studio 2015、2017、2019の.NET Coreユニットテストで提供しています。
このページに記載されたキーボードショートカットはすべて、ReSharperデフォルトの「Visual Studio」キーマップのものです。 ReSharperの2種類のキーマップの詳細は、ReSharperのドキュメントをご覧ください。