Migrieren von FxCop-Analysetools zu .NET-Analysetools

Gilt für:yes Visual Studio Visual Studio nofür Mac noVisual Studio Code

Quellanalyse durch .NET Compiler Platform ("Roslyn") ersetzt Legacyanalyse für verwalteten Code. Viele der Legacyanalyseregeln (FxCop) wurden bereits als Quellanalyse neu geschrieben.

Vor Visual Studio 2019 16.8 und .NET 5.0 werden diese Analysen als Microsoft.CodeAnalysis.FxCopAnalyzersNuGet-Paket geliefert.

Ab Visual Studio 2019 16.8 und .NET 5.0 sind diese Analysen in das .NET SDK enthalten. Wenn Sie nicht zum .NET 5+ SDK wechseln möchten oder wenn Sie ein NuGet-paketbasiertes Modell bevorzugen, sind die Analysen auch im Microsoft.CodeAnalysis.NetAnalyzersNuGet-Paket verfügbar. Möglicherweise bevorzugen Sie ein paketbasiertes Modell für bedarfsgesteuerte Versionsaktualisierungen.

Hinweis

Die First-Party.NET-Analysegeräte sind zielplattformagnostisch. Das heißt, Ihr Projekt muss nicht auf eine bestimmte .NET-Plattform abzielen. Die Analysen funktionieren für Projekte, die auf net5.0 .NET-Versionen abzielen, wie z netcoreapp. B. , netstandardund net472.

Schritte bei der Migration

Ab Version 3.3.2Microsoft.CodeAnalysis.FxCopAnalyzers wurde nuGet-Paket veraltet. Führen Sie die folgenden Schritte aus, um Ihr Projekt oder Ihre Lösung von Microsoft.CodeAnalysis.FxCopAnalyzers den .NET-Analysegeräten zu migrieren:

  1. Deinstallieren des Microsoft.CodeAnalysis.FxCopAnalyzers NuGet-Pakets

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

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

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

Weitere Informationen