ReSharper 2020.2ヘルプ

コードの課題のクイックフィックス

ReSharperを使用すると、設計時に検出されたほとんどのコード課題を即座に修復できます。強調表示されたコードの課題で Alt+Enter を押して、課題を解決したり最適以下のコードを改善したりするための適切な方法を選択するのと同じくらい簡単です。

Quick-fixes for code issues in ReSharper

クイックフィックスを適用する

クイックフィックスは、ハイライトされたコードの課題の左側にアクションインジケーターとして視覚的に表示されます。これらのインジケーターは、コードの課題でキャレットを設定すると表示されます。次の指標は、迅速な修正を意味します。

クイックフィックスを表示して適用する

  1. エディターマーカーバー指摘強調表示して、特定のコードの指摘に移動します。

  2. 強調表示された課題にキャレットを設定します。

  3. Alt+Enter を押すか、キャレットの左側にあるアクションインジケーターをクリックして、アクションリストを開きます。

  4. 目的のクイックフィックスをクリックするか、矢印キーを使用して選択し、Enterを押します。

ほとんどの場合、クイックフィックスはすぐに適用されます。ただし、一部のクイック修正(たとえば、すべてを変更)では、ユーザーの対話を使用して、コードを正確に変換する方法を選択する必要があります。これらの場合、ホットスポットセッションがエディターにデプロイされます。ここで、推奨値の1つを選択するか、アクティブな入力位置に独自の値を指定できます。

Hot spot session after applying quick-fix

ホットスポットセッションを完了するには:

  • ReSharperが現在のパラメータの値を提案している場合は、UpDown の矢印キーを使用して推奨値のリストをナビゲートするか、目的の値を入力してください。

  • Tab または Enter を押して値を受け入れ、次のパラメータの入力位置に移動します。これが最後のパラメータである場合、ホットスポットセッションは完了し、キャレットはセッション用に定義された終了位置に移動します。

  • Shift+Tab を押すと、入力フォーカスが前のパラメータの入力位置に移動します。

  • Esc を押してホットスポットセッションを終了します。この場合、すべてのセッションパラメータはデフォルト値で初期化されます。

いくつかのクイックフィックスは、現在のキャレット位置だけでなく、より広い範囲に適用することができます。詳細は、スコープの修正を参照してください。

Visual Studioからのクイックフィックス

バージョン2015以降、Visual Studioには独自のコード分析エンジン(Roslyn)が付属しており、リファクタリングやエラーの修正などの迅速なアクションを実行するための独自の電球(英語)機能を備えています。

Visual Studioのクイックアクションは、ReSharperのクイックフィックスコンテキストアクション、またはリファクタリングと同じ修正を実行することがよくあります。エラーによっては、Visual StudioとReSharperから同様の提案が2つあるかもしれません。下の図では、2つの電球が重複した using ディレクティブを削除することを提案しています。

Two light bulbs for fixing the same issue

これを避けるため、ReSharperはReSharperオプションの環境 | エディター | Visual Studioの機能ページにVisual Studio電球を隠すオプションを提供します。このオプションはデフォルトで有効になっているため、重複した電球は無効にしないと表示されません。

Visual Studio電球が抑制されている場合、Visual StudioアクションはVisual Studio電球アクションをReSharperアクションインジケーターにマージチェックボックスを選択することによってReSharperのアクションリストに統合することができます。選択されている場合、ReSharperは各Visual Studioのクイックアクションに対して次のことを行います。

この機能は、次の言語とテクノロジーでサポートされています。

Language: C#Language: VB.NETLanguage: C++Language: HTMLLanguage: ASP.NETLanguage: RazorLanguage: JavaScriptLanguage: TypeScriptLanguage: CSSLanguage: XMLLanguage: XAMLLanguage: ResxLanguage: Build ScriptsLanguage: ProtobufLanguage: JSON
Feature is available in C#Feature is available in Visual Basic .NETFeature is available in C++Feature is available in HTMLFeature is available in ASP.NETFeature is available in RazorFeature is available in JavaScriptFeature is available in TypeScriptFeature is available in CSSFeature is available in XMLFeature is available in XAMLFeature is available in Resource filesFeature is available in build script filesFeature is not available in ProtobufFeature is available in JSON

C#の機能の使用方法については、こちらの説明と例を参照してください。他言語の詳細については、言語によるReSharperの対応するトピックを参照してください。

最終更新日: 2020年8月21日

関連ページ:

設計時にコードの課題を検出する

ReSharperは、エディターでコード・ファイルを開くとすぐに分析を開始し、最後まで編集を続けます。検出されたすべてのコードの課題は、重大度に従ってエディターで強調表示されます。課題のマップは、エディターウィンドウの右側のマーカーバーにも表示されます。ここでは、ファイルのステータスを即座に確認し、...

アクションインジケータとアクションリスト

ReSharperがVisual Studioテキストエディターに追加する最も注目すべきものには、アクションインジケータとアクションリストがあります。これらは、ReSharperでサポートされるすべてのファイル(C#、VB.NET、XML、CSS、JavaScript、ASP.NETなど)に表示され...

コード・インスペクション

ReSharperはサポートされているすべての言語で2500以上のインスペクションを提供します。これらのインスペクションは、開いているすべてのファイルで設計時にコードの課題を検出して強調表示するため、および/または特定の範囲内ですべてのコードの課題を見つけるために使用されます。インスペクション Re...

クイックフィックスの例

クイックフィックスは、さまざまな状況で利用できますが、リストアップするには大きすぎます。ReSharperは、サポートされているすべての言語で合計1200を超えるクイックフィックスを提供します。ここでは、状況の小さな選択を使用して使用する方法を示します:型のミスマッチ:式の型を、式コンテキストに適用...

NuGetパッケージの検索、探索、インストール

ReSharperを使用すると、NuGetパッケージギャラリーで型または名前空間を検索し、一致するパッケージをチェックし、その内容を分析し、目的のパッケージをインストールすることができます。NuGetパッケージを探す:NuGetパッケージの検索を開始する最も簡単な方法は、未解決の名前空間で使用できる...

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

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