1. ホーム
  2. c#

Visual Studio 2015 - 「Analyzers」リファレンスの意味とは?

2023-11-18 18:19:33

質問内容

Visual Studio 2015 Preview でプレーンな C# Console App を作成すると、"Analyzers" という名前の疑似リファレンスが表示されます。



上記のquot;Analyzers"は何を意味するのですか?

プロジェクトファイルには何も入っておらず、プロパティウィンドウにはこのエントリについて何も(完全に空白)表示されていません(ただし、"参照プロパティ"とは対照的に、ヘッダに"フォルダプロパティ"とありますが、これは多くを語ってはいません)。

私はこれが Roslyn に関連していることを期待しますが、全くわかりません。私は ReSharper をインストールしていますが、それと関係があるとは思っていません。

2016.6.8編集

受け取った回答は、アナライザが提供するツールについて説明していますが、なぜ 開発ツール が(ランタイム?)リファレンスになるのかについては未解決です。実際、それは他の参照とは異なり、実行時の参照ではありません。つまり、この奇跡に対する答えは、以下のHans Passantsのコメントです。

彼らはコード解析機能を追加するために不器用な場所を選びました。ソリューション エクスプローラーと nuget を抜本的に見直すことなく、より良い場所を見つけることができなかっただけです。- Hans Passant May 26 '15 at 8:59

どのように解決するのですか?

ライブコードアナライザ は、入力中にライブで表示されるカスタム エラー メッセージと警告、およびそれらをクリーンアップするための自動コード修正を追加するために使用されます。これらは Visual Studio 2015 でプロジェクトに追加する NuGet パッケージとして利用できます。

NuGet パッケージによって、コードを入力しているときにエディターでカスタム警告とエラーをライブで有効にし、それらの問題を私たちのためにクリーンアップできる自動コード修正機能を利用できるのは、Visual Studio 2015 の最高かつ有用な主要新機能の 1 つです。

パッケージは、API とドメイン固有のアナライザーの両方を引き込む「コード認識ライブラリ」としてバンドルすることもでき、使用時に軌道修正されるようにします。

NuGet パッケージをダウンロードした瞬間から、的を射たガイダンスを受けることができるのです。そして、これらのアナライザーは私たちのプロジェクトの一部であるため、チームの全員が同じ警告を見ることができるようになります。

編集1:

Analyzerには、以下のようなルールがあります。

これらのルールは、あなたのコードの中で最も重大な問題に焦点を当てます。 以下のような 潜在的なセキュリティホール、アプリケーションのクラッシュ、およびその他の 重要なロジックや設計のエラー . このルールセットは、プロジェクトで作成するカスタムルールセットにも含める必要があります。 このルールセットは、プロジェクトで作成する任意のカスタム ルール セットに含める必要があります。