Delen via


Migreren van NuGet FxCop-analyses naar .NET Analyzers

Bronanalyse door .NET Compiler Platform ("Roslyn")-analyses vervangt verouderde analyse voor beheerde code. Veel van de verouderde analyseregels (FxCop) zijn al herschreven als bronanalyses.

Vóór Visual Studio 2019 16.8 en .NET 5.0 werden deze analyses geleverd als Microsoft.CodeAnalysis.FxCopAnalyzersNuGet-pakket.

Vanaf Visual Studio 2019 16.8 en .NET 5.0 zijn deze analyses opgenomen in de .NET SDK. Als u niet wilt overstappen op de .NET 5+ SDK of als u liever een NuGet-pakketmodel gebruikt, zijn de analyses ook beschikbaar in het Microsoft.CodeAnalysis.NetAnalyzersNuGet-pakket. Mogelijk geeft u de voorkeur aan een model op basis van pakketten voor updates van versies op aanvraag.

Opmerking

De .NET Analyzers van de eerste partij zijn doelplatformneutraal. Dat wil gezegd, uw project hoeft zich niet te richten op een specifiek .NET-platform. De analyzers werken voor projecten die zich richten op net5.0, evenals eerdere .NET-versies, zoals netcoreapp, netstandard, en net472.

Migratiestappen

Vanaf versie 3.3.2Microsoft.CodeAnalysis.FxCopAnalyzers is het NuGet-pakket afgeschaft. Volg de onderstaande stappen om uw project of oplossing te migreren van Microsoft.CodeAnalysis.FxCopAnalyzers naar .NET Analyzers:

  1. NuGet-pakket verwijderen Microsoft.CodeAnalysis.FxCopAnalyzers

  2. .NET-analyzers inschakelen of installeren. Houd er rekening mee dat u het doelplatform van uw project niet hoeft te wijzigen.

  3. Aanvullende regels inschakelen: Microsoft.CodeAnalysis.NetAnalyzers is veel conservatiever in vergelijking met Microsoft.CodeAnalysis.FxCopAnalyzers. In tegenstelling tot het FxCopAnalyzers-pakket, heeft het maar een paar regels voor juistheid die standaard zijn ingeschakeld als buildwaarschuwingen. U kunt aanvullende regels inschakelen door de eigenschap AnalysisMode MSBuild aan te passen. Als u bijvoorbeeld de eigenschap instelt op AllEnabledByDefault, worden standaard alle toepasselijke CA-regels ingeschakeld als buildwaarschuwingen.

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