ReSharper 2019.2ヘルプ

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

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

クイックフィックスの適用

クイックフィックスは、強調表示されたコードの課題の左にアクションインジケータとして視覚的に表示されます。これらのインジケータは、コードの発行時にキャレットを設定すると表示されます。次のインジケータは、クイックフィックスを意味します。

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

  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 Light Bulbを表示しないオプションを提供します。このオプションはデフォルトで有効になっているため、重複した電球は無効にしないと表示されません。

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 availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is availableFeature is not availableFeature is available

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

最終更新日: 2019年11月13日

関連ページ:

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

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

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

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

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

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

クイックフィックスの例

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

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

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

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

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