Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les analyseurs de la plateforme du compilateur .NET (Roslyn) inspectent votre code C# ou Visual Basic pour connaître le style, la qualité, la maintenance, la conception et d’autres problèmes. Cette inspection ou cette analyse se produit pendant le temps de conception dans tous les fichiers ouverts.
Les analyseurs sont divisés en groupes suivants :
-
Ces analyseurs sont intégrés à Visual Studio. L’ID de diagnostic de l’analyseur ou le format de code est IDExxxx, par exemple, IDE0001. Vous pouvez configurer des préférences dans la page d’options de l’éditeur de texte ou dans un fichier EditorConfig. À compter de .NET 5.0, les analyseurs de style de code sont inclus dans le Kit de développement logiciel (SDK) .NET et peuvent être strictement appliqués en tant qu’avertissements ou erreurs de build. Pour plus d’informations, consultez Vue d’ensemble de l’analyse du code source .NET.
-
Ces analyseurs sont inclus dans le Kit de développement logiciel (SDK) .NET 5.0 et versions ultérieures et activés par défaut. L’ID de diagnostic de l’analyseur ou le format de code est CAxxxx, par exemple, CA1822. Pour plus d’informations, consultez Vue d’ensemble de l’analyse de la qualité du code .NET.
Analyseurs externes
Des exemples d’analyseurs externes sont StyleCop, Roslynator, xUnit Analyzers et Sonar Analyzer. Vous pouvez installer ces analyseurs en tant que package NuGet ou extension Visual Studio.
Niveaux de gravité des analyseurs
Chaque règle d’analyseur Roslyn, ou diagnostic, a un état de gravité et de suppression par défaut que vous pouvez personnaliser pour votre projet.
Les niveaux de gravité sont les suivants : Erreur, Avertissement, Suggestion, Silencieux, None et Default. Pour plus d’informations et de comportement, consultez Configurer les niveaux de gravité.
Violations de règles
Si un analyseur détecte des violations de règle d’analyseur, il les signale dans la fenêtre Liste d’erreurs et dans l’éditeur de code.
La capture d’écran suivante montre les violations de règle signalées dans la fenêtre Liste d’erreurs . Les violations de l’analyseur signalées dans la liste d’erreurs correspondent au paramètre de niveau de gravité de la règle :
Les violations de règle d’analyseur s’affichent également dans l’éditeur de code en tant que lignes ondulées sous le code en cause. Par exemple, la capture d’écran suivante montre trois violations : une erreur (ligne ondulée rouge), un avertissement (ligne ondulée verte) et une suggestion (trois points gris) :
Correctifs de code
De nombreux diagnostics ont un ou plusieurs correctifs de code associés que vous pouvez appliquer pour corriger la violation de règle. Les correctifs de code sont affichés dans le menu d’icône d’ampoule, ainsi que d’autres types d’actions rapides. Pour plus d’informations sur les correctifs de code, consultez Actions rapides courantes.
Configurer les niveaux de gravité de l’analyseur
Vous pouvez configurer la gravité des règles d’analyseur dans un fichier EditorConfig ou à partir du menu ampoule.
Vous pouvez également configurer des analyseurs pour inspecter le code au moment de la génération et à mesure que vous tapez. Vous pouvez configurer l’étendue de l’analyse du code en direct pour s’exécuter uniquement pour le document actif, tous les documents ouverts ou toute la solution. Pour plus d’informations, consultez Configurer l’analyse du code en direct pour .NET.
Conseil / Astuce
Les erreurs et avertissements au moment de la génération des analyseurs de code sont affichés uniquement si les analyseurs sont installés en tant que package NuGet. Les analyseurs intégrés (par exemple, IDE0067 et IDE0068) ne s’exécutent jamais pendant la compilation.
Installer des analyseurs de code externe
Visual Studio inclut un ensemble principal d’analyseurs Roslyn, qui sont toujours actifs. Si vous avez besoin d’autres analyseurs de code, vous pouvez installer des analyseurs externes pour chaque projet via un package NuGet. Certains analyseurs sont également disponibles en tant qu’extension Visual Studio .vsix , auquel cas ils s’appliquent à n’importe quelle solution que vous ouvrez dans Visual Studio. Pour plus d’informations sur l’installation de ces deux types d’analyseurs différents, consultez Installer des analyseurs de code.
Étendue
Si vous installez un analyseur en tant que package NuGet, la méthode recommandée s’applique uniquement au projet où le package NuGet est installé. Sinon, si vous installez un analyseur en tant qu’extension Visual Studio, il s’applique au niveau de la solution et à toutes les instances de Visual Studio. Dans les environnements d’équipe, un analyseur que vous installez en tant que package NuGet est accessible à tous les développeurs qui travaillent sur ce projet.
Remarque
Les analyseurs internes sont fournis dans le Kit de développement logiciel (SDK) .NET. Il est préférable d’activer ces analyseurs à partir du Kit de développement logiciel (SDK) .NET au lieu de les installer en tant que Microsoft.CodeAnalysis.NetAnalyzers
package NuGet. L’activation des analyseurs à partir du Kit de développement logiciel (SDK) .NET garantit que vous obtenez automatiquement des correctifs de bogues d’analyseur et de nouveaux analyseurs dès que vous mettez à jour le Kit de développement logiciel (SDK). Pour plus d’informations sur les analyseurs, consultez Activer ou installer des analyseurs .NET internes.
Erreurs de compilation
Pour appliquer les règles au moment de la compilation, par l'utilisation de ligne de commande ou de builds d’intégration continue (CI), choisissez l’une des options suivantes :
Créez un projet .NET 5.0 ou version ultérieure, qui active l’analyse du code par défaut. Pour activer l’analyse du code sur les projets qui ciblent les versions antérieures de .NET, définissez la propriété
true
sur .Installez les analyseurs en tant que package NuGet. Si vous installez les analyseurs en tant qu’extension Visual Studio, les avertissements et erreurs de l’analyseur n’apparaissent pas dans le rapport de build.
La capture d’écran suivante montre la sortie de build en ligne de commande d’un projet qui contient une violation d'une règle d'analyse :
Gravité des règles
Si vous souhaitez configurer la gravité de la règle d’analyseur, vous devez installer l’analyseur en tant que package NuGet. Vous ne pouvez pas configurer la gravité des règles à partir d’analyseurs installés en tant qu’extension Visual Studio.