カスタムコードインスペクションとクイックフィックスを作成する
コードに問題または悪い習慣があるが、ReSharper がそれを検出しない場合は、カスタムコードインスペクションを作成することができます。 さらに、問題のあるコードを置き換えるコード、つまりカスタム クイックフィックスを指定することができます。
カスタムインスペクションが正しく作成されていれば、コードベースのすべての同様の問題を見つけ出し、問題のあるコードをエディターでハイライトすることができます。
カスタムインスペクションを作成するには、 構造検索と置換 メカニズムを利用できます。
カスタムインスペクションの作成を説明するために、次のコードが気に入らないとしましょう:
.. そしてそれをむしろそれと置き換える:
クイックフィックスを使用してカスタムコードインスペクションを作成する
エディターで、問題とみなすコードを選択します。
選択範囲を右クリックし、 パターンで検索 を選択します。
ReSharper は、選択されたコードが検索パターンとして事前解析された状態で パターンで検索ダイアログを表示します。 一部の識別子、引数、型などは、自動的にプレースホルダーに置き換えられます:

インスペクションパターンをよりユニバーサルにするには、認識されている プレースホルダーを編集し、他のコード項目をより多くのプレースホルダーに置き換えます。 たとえば、この例の
tryブロック内の単一のステートメントを、任意の数のステートメントと一致するプレースホルダーに置き換えることができます。問題のクイックフィックスを指定するには、ダイアログの右上隅にある 置換 をクリックします。
置換パターン 領域で、問題のあるコードを置き換えるために使用する必要のあるパターンを指定します。 変数コード項目には同じプレースホルダーを使用します。
洗練されたパターンとクイックフィックスがこの例をどのように探すかを次に示します。

終了したら、 保存 をクリックし、次に 閉じる をクリックします。 カスタムインスペクションは、スマート保存ロジックを使用してパターンカタログに保存されます。
問題のあるコードはまだエディターでハイライトされていないことに注意してください。 それを機能させるには、さらにいくつかのことを行う必要があります。
メインメニューから を選択するか、 Alt+R O を押してから、左側の を選択します。
パターンの一覧から、作成したカスタムインスペクションに対応するパターンを探します。 デフォルトで、その 重要度レベルは「表示しない」に設定されており、ReSharper はカスタムインスペクションに該当する問題を無視します。
インスペクションを有効にするには、「提案」など、他の重大度レベルを選択します。
最後に、カスタムインスペクションおよび対応するクイックフィックスに表示される説明を指定できます。
これを行うには、パターンをダブルクリックし、開いた ハイライトパターンの編集 ダイアログで、対応するフィールドに説明を指定します。

パターンの変更を保存して閉じ、ReSharper オプションの カスタムパターン ページで 保存 をもう一度クリックします。
これで問題が認識され、エディターでハイライトされます。 指定した説明の上にマウスを置くと、その説明が表示されます。

インスペクションパターンを洗練するにつれて、コンストラクター呼び出しでの引数の数やステートメントの数が異なる場合でも、同様の問題が発生します。

カスタムインスペクションのクイックフィックスは、内蔵 クイックフィックスとまったく同じように見えます。

カスタムパターンで説明されている問題をより広い範囲で見つける必要がある場合は、いくつかのオプションがあります。
ReSharper オプションの ページでインスペクションパターンを選択し、ページツールバーの 検索 をクリックします。
目的のスコープでコードインスペクションを実行するを実行し、検出されたコードの問題の残りの部分でカスタム問題を分析します。
エディターでハイライトされたコードで Alt+Enter を押すと、インスペクションオプションに表示される 類似課題を見つけるアクションを使用します。
この機能は、次の言語とテクノロジーで サポートされています。
ここで説明する手順と例では、C# の機能の使用について説明します。 他の言語の詳細については、 言語およびフレームワーク セクションの対応するトピックを参照してください。