Freigeben über


Migrieren von NuGet FxCop Analyzers zu .NET Analyzern

Quellcodeanalyse durch .NET Compiler Platform ("Roslyn") Analyzer ersetzt Legacyanalyse für verwalteten Code. Viele der veralteten Analyseregeln (FxCop) wurden bereits als Quellanalysetools umgeschrieben.

Vor Visual Studio 2019 16.8 und .NET 5.0 wurden diese Analysegeräte als Microsoft.CodeAnalysis.FxCopAnalyzersNuGet-Paket ausgeliefert.

Ab Visual Studio 2019 16.8 und .NET 5.0 sind diese Analyzer im .NET SDK enthalten. Wenn Sie nicht zum .NET 5+ SDK wechseln möchten oder ein paketbasiertes NuGet-Modell bevorzugen, stehen die Analysegeräte auch im Microsoft.CodeAnalysis.NetAnalyzersNuGet-Paket zur Verfügung. Möglicherweise bevorzugen Sie ein paketbasiertes Modell für Updates von On-Demand-Versionen.

Hinweis

Die .NET-Analyzer von Erstanbietern sind zielplattformagnostisch. Das heißt, Ihr Projekt muss nicht auf eine bestimmte .NET-Plattform abzielen. Die Analysegeräte arbeiten für Projekte, die auf net5.0 abzielen, sowie auf frühere .NET-Versionen, wie netcoreapp, netstandard und net472.

Migrationsschritte

Ab Version 3.3.2Microsoft.CodeAnalysis.FxCopAnalyzers ist das NuGet-Paket veraltet. Führen Sie die folgenden Schritte aus, um Ihr Projekt oder Ihre Lösung von Microsoft.CodeAnalysis.FxCopAnalyzers auf die .NET-Analysetools zu migrieren.

  1. NuGet-Paket deinstallieren Microsoft.CodeAnalysis.FxCopAnalyzers

  2. Aktivieren oder Installieren von .NET-Analyzern. Beachten Sie, dass Sie die Zielplattform Ihres Projekts nicht ändern müssen.

  3. Zusätzliche Regeln aktivieren: Microsoft.CodeAnalysis.NetAnalyzers ist im Vergleich zu Microsoft.CodeAnalysis.FxCopAnalyzers viel konservativer. Im Gegensatz zum FxCopAnalyzers-Paket verfügt es nur über einige Wenige Korrektheitsregeln, die standardmäßig als Buildwarnungen aktiviert sind. Sie können zusätzliche Regeln aktivieren , indem Sie die AnalysisMode MSBuild-Eigenschaft anpassen. Wenn Sie beispielsweise die Eigenschaft auf AllEnabledByDefault festlegen, werden alle anwendbaren Regeln der Codeanalyse standardmäßig als Buildwarnungen aktiviert.

    <PropertyGroup>
      <AnalysisMode>AllEnabledByDefault</AnalysisMode>
    </PropertyGroup>