デバッグ支援

ReSharperは、インラインデバッグ情報、検索可能なデータヒントによってC#、VB.NET、 C++でのデバッグ作業を合理化し、すべてのサポート対象言語に対して 多数のブレークポイントナビゲーション機能を提供します。 そのほか、ReSharperでは任意の外部モジュールをデバッグすることができます。 デバッグ情報を持たないモジュールもデバッグできます。

ReSharperは、インラインデバッグ情報をVisual Studioのエディタに追加します。

インラインデバッグ情報

コードをデバッグ中に実行を中断すると、エディタ内で直接ローカル変数の値、 現在行の式の値、および関数の戻り値を該当コード行の隣で 確認することができます。
ReSharperは[DebuggerDisplayAttribute]を理解します。つまり、この属性でマークされた型、プロパティ、フィールドの値が、それに応じてエディタの装飾部分に表示されます。

ReSharperのデータヒント:デバッグされたオブジェクトの値を表示

改良され、検索可能になったデータヒント

ReSharperはVisual Studioのデータヒント(DataTips)を改良したものを提供しています。

  • データヒントに入力して、現在中断している実行コンテキスト内の特定の値を検索できます。
  • 型に意味のあるToString()オーバーライドが存在せず、[DebuggerDisplayAttribute]で注釈も付けられていない場合、デバッガビューでこの型のオブジェクトを表示しても、ほとんど有益な情報は得られないでしょう。 ReSharperのデータヒントでは、このようなオブジェクトの表示をその場でカスタマイズできます。
  • ReSharperのデータヒントはマウスポインターを離しても消えません。Escを押すか、データヒントの外をクリックするまで表示され続けます。
ReSharper. ブレークポイントへの移動

ブレークポイントに移動

ReSharperでは、Ctrl+Alt+F9ReSharper | Navigate | Breakpoints)を使って 簡単にソリューション内の任意のブレークポイントやトレースポイントにジャンプできます。
リストには初期状態でソリューション内のすべてのブレークポイントが表示されていますが、入力を開始して文脈に応じて結果を絞り込んでから、目的のブレークポイントに直接移動できます。
リスト内でDeleteを 押してブレークポイントを削除することもできます。

ReSharperのブレークポイントウィンドウ

ReSharperのブレークポイントウィンドウ

ReSharperは独自のR# Breakpointsウィンドウを備え、これを、ネイティブなVisual Studioウィンドウの代わりとして使えます。 ReSharperのウィンドウでは以下の操作を行えます:

  • ブレークポイントをファイル/フォルダ/プロジェクト/型/メンバーごとにグループ化。
  • ウィンドウ内に入力を開始し、文脈に応じてブレークポイントを検索。
  • コンテキストメニューを使って、ブレークポイントを有効化/無効化、または削除。
  • 選択したブレークポイントが設定されているコードのプレビューを取得。
  • ブレークポイントをテキスト、XML、HTMLファイルにエクスポート。

また、Find Resultsウィンドウではブレークポイントの表示、 切り替え、有効化/無効化を非常に簡単に実行できます。たとえば、 デバッグ対象のシンボルが出現する箇所すべてにブレークポイントを すばやく設定できます。

デバッグ情報(PDB)を持たないモジュールのデバッグ

ReSharperを使うと、デバッグ情報(PDB)を持たないものを含め、あらゆるコンパイル済みのモジュールをデバッグできます。 ReSharperはモジュールをデコンパイルし、そのPDBを生成し、このモジュールのデコンパイル済みシンボルを、自動的にVisual Studioのデバッガに読み込みます。

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

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