ASP.NET、ASP.NET MVC、ASP.NET Core向けのツール

ReSharperはコード解析、コーディング支援、ナビゲーション、コード生成機能を ひとまとめに提供して、マークアップファイルを含むASP.NETプロジェクトおよびASP.NET MVC プロジェクトでの作業を効率化します。 それらの機能の中には、C#プロジェクトやVB.NETプロジェクトの場合と全く同じようにウェブアプリケーションで 動作するものもあれば、ウェブ開発の特定の要件に合わせて微調整されているものもあります。

ReSharperのASP.NET用コードインスペクションとクイックフィックス

コードインスペクションとクイックフィックス

ASP.NETマークアップやコードビハインドファイルで使用されるC#コードを扱う際、あらゆる種類のコードインスペクションクイックフィックスを含むReSharperの機能をすべて使用することができます。 また、ASP.NET固有の インスペクションやクイックフィックスもあります。たとえば、ReSharperはaspx ページ内にある未使用の名前空間のインポート、不明なシンボルやエンティティを検出します。

ASP.NETマークアップファイルでもマーカーバーとステータスインジケーターを使用し、ReSharperが発見したコードの問題を渡り歩くことができます。

ReSharperのコンテキストアクションを使ったASP.NETコードの変換

コンテキストアクション

ReSharperは一般的なASP.NETマークアップのシナリオに役立つ多数のコンテキストアクションを提供しています。

例えば、ASP.NETのコンテキストアクションを使うと、タグの置換・折りたたみ・削除、HTMLエンティティの変換、イベント・関数・プロパティの作成、テーブルの行や列の挿入、コードビハインドファイルの追加などが行えます。

.aspxファイルのファイル構造

ナビゲーションと検索

ASP.NETではReSharperの多くのナビゲーション機能を使用できます。

例えば、現在開いているaspxファイルのマークアップ項目の概要を取得するには、Ctrl+Alt+Fを押してFile Structureツールウィンドウを表示してください。 Go to File MemberGo to Next/Previous Member、およびGo to Containing DeclarationのようなFile Structureに派生する機能も自由にお使いいただけます。

ASP.NETプロジェクトで役に立つその他のナビゲーションアクションには、特に参照からユーザーコントロールやマスターページへの移動に役立つGo to DeclarationContentPlaceHolderタグから対応するContentタグ、またはマスターページの参照からそれを使用しているすべてのウェブフォームへの移動に役立つGo to Usages of Symbolがあります。

マークアップファイルからその参照先ファイルへのナビゲーション

関連ファイルに移動

Go to Related Files(関連ファイルに移動)(Ctrl+Alt+F7)は、コードビハインドファイル、マスターページ、ユーザーコントロール、画像、ASP.NET MVC ビューやコントローラーなどの参照先に移動できるウェブ固有の移動操作です。

ASP.NET MVCビューでのシンタックスハイライト

シンタックスハイライト

C#またはVB.NETを使用しているaspxページでインラインコードブロックを使用する際、ReSharperのシンタックスハイライトが役に立ちます。

  • ASP.NET MVCの呼び出しでアクションとコントローラ名を簡単に特定できます。 (この機能やその他の機能については、 ReSharperのその他のASP.NET MVC向け機能を確認してください。)
  • C#およびVB.NETコード向けに通常のシンタックスハイライトも利用可能です。
ASP.NET用コードテンプレート

コードテンプレート

ReSharperでは、ASP.NETやASP.NET MVCの開発者は20種類のウェブに特化したバンドルテンプレートを使用してウェブフォーム、タグ、属性を生成することができます。

  • ASP.NET用のLive templatesCtrl+E、L)は、新しいコントロール、スクリプトブロック、タグ、属性の作成を高速化します。
  • Surround templatesCtrl+E、U)は、テキストやコードを、タグ、リンク、またはforeachブロックで囲むのに役立ちます。
  • File templatesCtrl+Alt+Ins)は、新しいウェブフォーム、ユーザーコントロール、マスターページの作成に役立ちます。
ASP.NETでのイベントサブスクリプションメソッドの生成

コード生成

ReSharperは参照先マスターページで定義されているContentPlaceHolderタグに基づいて、マークアップページのContentタグを生成することができます。

また、ASP.NETのコードビハインドファイルのイベントサブスクリプションメソッドを生成する機能もあります。

エディタ内でAlt+Insを押すと、これらの機能や、現在のコンテキストで使用できる一般的なC#およびVB.NETのコード生成機能を呼び出せます。

ReSharperのASP.NETでのコード補完

コード補完

コード補完スマート補完を含む)はタグ名と属性値の補完に対応しています。 インポートシンボル補完は、事前に登録されていない未インポートのユーザーコントロールを参照するのに役立ちます。ReSharperはRegisterディレクティブを自動生成します。

ReSharperはASP.NETのユーザーコントロールを自動登録します

自動インポートと自動登録

自動登録と言えば、ReSharperは他の種類のプロジェクトと同じように、ユーザーコントロールを使用するとそれをすぐに自動登録し、型を使用するとすぐにそれが属する名前空間をすべて自動インポートします。

ASP.NETコードの再配置

その他のコーディング支援

ReSharperは開始タグを入力した場合は対応する終了タグを、属性値の開始引用符を入力した場合は終了引用符をすぐに自動挿入します。 それだけでなく、それらのいずれかにキャレットを置くと、対応する区切り文字がハイライトされます。

タグの階層が深い場合は、Extend/Shrink Selectionを使ってタグの選択範囲を狭めたり広げたりできます。 選択範囲は、上下(タグの場合)または左右(属性の場合)に移動できます。

ASP.NETでの国際化支援

国際化

ローカライズが必要な、aspxページにHTMLマークアップがある場合は、それを選択し、Alt+Enterを押すと該当文字列をリソースファイルに移動できます。 ただし、これはReSharperが提供する国際化機能のほんの一部に過ぎません。

ASP.NET MVCビューでのReSharperの機能

ASP.NET MVCサポート

ReSharperはASP.NET MVCプロジェクト固有の機能セットを提供しています。

上記の機能やコントローラのコーディングに役立つ一般的なC#/VB.NET向けの支援機能のほか、アクションやコントローラ間の移動、文字列リテラルのアクション参照を認識する専用のシンタックスハイライトコード補完使用箇所からのアクションとコントローラの作成その他をaspxビューエンジンとRazorビューエンジンの両方で利用できます。

ASP.NET CoreでのReSharperの機能

ASP.NET Coreサポート

ReSharperは、ASP.NET Coreプロジェクトのプロジェクト参照やタグヘルパーの構文を認識し、リファクタリングコードインスペクションナビゲーションコード補完などの基本的な機能セットを提供します。 ユニットテスト支援はVisual Studio 2015、2017、2019の.NET Coreユニットテストで提供しています。

ショートカットに関する注意

このページに記載されたキーボードショートカットはすべて、ReSharperデフォルトの「Visual Studio」キーマップのものです。 ReSharperの2種類のキーマップの詳細は、ReSharperのドキュメントをご覧ください。