.NET コンパイラ プラットフォーム ("Roslyn") アナライザーによるソース分析は、マネージド コードの レガシ分析 に代わるものです。 レガシ分析 (FxCop) ルールの多くは、ソース アナライザーとして既に書き換え済みです。
Visual Studio 2019 16.8 および .NET 5.0 より前では、これらのアナライザーは Microsoft.CodeAnalysis.FxCopAnalyzers
NuGet パッケージとして出荷されました。
Visual Studio 2019 16.8 および .NET 5.0 以降では、これらのアナライザーは .NET SDK に含まれています。 .NET 5+ SDK に移行しない場合、または NuGet パッケージ ベースのモデルを使用する場合は、アナライザーは Microsoft.CodeAnalysis.NetAnalyzers
NuGet パッケージでも使用できます。 オンデマンド バージョンの更新には、パッケージ ベースのモデルを使用することをお選びになる場合があります。
注
ファースト パーティの .NET アナライザーは、ターゲット プラットフォームに依存しません。 つまり、プロジェクトは特定の .NET プラットフォームをターゲットにする必要はありません。 アナライザーは、 net5.0
を対象とするプロジェクトと、 netcoreapp
、 netstandard
、 net472
などの以前の .NET バージョンで機能します。
移行の手順
バージョン 3.3.2
以降、 Microsoft.CodeAnalysis.FxCopAnalyzers
NuGet パッケージは非推奨になりました。 プロジェクトまたはソリューションを Microsoft.CodeAnalysis.FxCopAnalyzers
から .NET アナライザーに移行するには、次の手順に従ってください。
NuGet パッケージ
Microsoft.CodeAnalysis.FxCopAnalyzers
アンインストールする.NET アナライザーを有効またはインストールします。 プロジェクトのターゲット プラットフォームを変更する必要はありません。
追加のルールを有効にする:
Microsoft.CodeAnalysis.NetAnalyzers
は、Microsoft.CodeAnalysis.FxCopAnalyzers
よりもはるかに保守的です。 FxCopAnalyzers パッケージとは異なり、 ビルド警告として既定で有効になっている正確性規則がいくつかあります。 AnalysisMode MSBuild プロパティをカスタマイズすることで、追加のルールを有効にすることができます。 たとえば、プロパティをAllEnabledByDefault
に設定すると、該当するすべての CA 規則が既定でビルド警告として有効になります。<PropertyGroup> <AnalysisMode>AllEnabledByDefault</AnalysisMode> </PropertyGroup>