Migrer des analyseurs NuGet FxCop vers les analyseurs .NET
Article
L’analyse de code source par des analyseurs .NET Compiler Platform (« Roslyn ») remplace l’analyse héritée du code managé. La plupart des règles d’analyse héritées (FxCop) ont déjà été réécrites sous la forme d’analyseurs de code source.
Avant Visual Studio 2019 version 16.8 et .NET 5.0, ces analyseurs étaient fournis sous forme de package Microsoft.CodeAnalysis.FxCopAnalyzersNuGet.
À compter de Visual Studio 2019 version 16.8 et .NET 5.0, ces analyseurs sont inclus dans le Kit de développement logiciel (SDK) .NET. Si vous ne souhaitez pas passer au SDK .NET 5+ ou si vous préférez un modèle basé sur un package NuGet, les analyseurs sont également disponibles dans le package Microsoft.CodeAnalysis.NetAnalyzersNuGet. Vous pouvez préférer un modèle basé sur un package pour les mises à jour de version à la demande.
Notes
Les analyseurs .NET internes sont indépendants de la plateforme cible. Autrement dit, votre projet n’a pas besoin de cibler une plateforme .NET spécifique. Les analyseurs fonctionnent pour les projets qui ciblent net5.0, ainsi que les versions antérieures de .NET, telles que netcoreapp, netstandardet net472.
Étapes de la migration
À compter de la version 3.3.2, le package NuGet Microsoft.CodeAnalysis.FxCopAnalyzers a été déconseillé. Suivez les étapes ci-dessous pour migrer votre projet ou votre solution de Microsoft.CodeAnalysis.FxCopAnalyzers vers les analyseurs .NET :
Désinstallez le package NuGet Microsoft.CodeAnalysis.FxCopAnalyzers
Activer des règles supplémentaires : Microsoft.CodeAnalysis.NetAnalyzers est beaucoup plus conservateur que Microsoft.CodeAnalysis.FxCopAnalyzers. Contrairement au package FxCopAnalyzers, il ne possède que quelques règles de vérification qui sont activées par défaut en tant qu’avertissements de génération. Vous pouvez activer des règles supplémentaires en personnalisant la propriété AnalysisMode de MSBuild. Par exemple, si vous définissez la propriété sur AllEnabledByDefault, toutes les règles d’autorité de certification applicables seront activées en tant qu’avertissements de génération par défaut.
Dans ce module, vous apprendrez quand, pourquoi et comment moderniser une application ASP.NET Framework vers ASP.NET Core à l’aide de l’Assistant Mise à niveau.
Consultez les questions fréquemment posées (FAQ) sur l’analyse de code FxCop (analyse binaire) et les analyseurs .NET (analyse de source) dans Visual Studio et leurs différences.
Analysez le code pour la première fois ou migrez votre processus de l’analyse binaire (analyse de code FxCop) vers des analyseurs .NET pour l’analyse source.
Activez les analyseurs .NET natifs à l’aide du kit de développement logiciel (SDK) .NET dans Visual Studio ou installez un analyseur natif en tant que package NuGet.
Découvrez comment installer des analyseurs externes dans Visual Studio. Installez des analyseurs avec des packages d'analyseur NuGet et en tant qu'extension VSIX.
Découvrez comment personnaliser les règles de l'analyseur Roslyn en ajustant les sévérités de l'analyseur, en supprimant les violations et en désignant les fichiers comme du code généré.