Configurer l’analyse du code dynamique pour .NET

Visual Studio analyse le code de plusieurs manières pendant que vous modifiez des fichiers sources dans l'éditeur. Cette analyse est appelée analyse en arrière-plan. Ces analyses peuvent être classées comme suit, en fonction de leur fonctionnalité :

  • Calcul des diagnostics en arrière-plan : ce type d'analyse calcule les erreurs, les avertissements et les suggestions dans les fichiers source. Ces diagnostics s'affichent sous forme d'entrées dans la fenêtre Liste d'erreurs et sont marqués avec des lignes éculées dans l'éditeur de code. Ils peuvent être classifiés en plusieurs catégories :

    • Diagnostics des compilateurs C# et Visual Basic
    • Diagnostics de l'analyseur Roslyn, qui comprend les éléments suivants :
      • Analyseurs intégrés à l’IDE pour les suggestions de style du code
      • Analyseurs de code intégrés pour les suggestions de qualité du code
      • Packages d'analyseurs externes installés pour les projets de la solution actuelle
  • Autres analyses en arrière-plan : ce type d'analyse améliore la réactivité et l'interaction avec Visual Studio pour les fonctionnalités de l'IDE. Voici quelques exemples d'analyses :

    • Analyse en arrière-plan des fichiers ouverts
    • Compilation en arrière-plan des projets ayant des fichiers ouverts pour obtenir des symboles et améliorer la réactivité des fonctionnalités de l'IDE
    • Création de caches de syntaxe et de symboles
    • Détection de l'association des fichiers sources à un concepteur, par exemple les formulaires et les contrôles

Étendue d’analyse par défaut

Par défaut, les diagnostics du compilateur s'exécutent sur tous les documents ouverts. Dans Visual Studio 2022 et versions ultérieures, les diagnostics de l'analyseur Roslyn s'exécutent uniquement sur le document actif. Les autres analyses en arrière-plan sont exécutées pour tous les projets qui ont au moins un fichier ouvert. Certaines analyses en arrière-plan s'exécutent pour la solution complète.

Étendue d’analyse personnalisée

L'étendue par défaut de chaque analyse en arrière-plan est configurée pour offrir une expérience utilisateur, des fonctionnalités et des performances dans la plupart des scénarios et des solutions des clients. Toutefois, il existe des cas où les clients peuvent souhaiter personnaliser cette étendue pour réduire ou augmenter l'analyse en arrière-plan. Par exemple :

  • Mode Économie d'énergie

    Si vous utilisez la batterie d'un ordinateur portable, vous voudrez peut-être réduire la consommation d'énergie pour augmenter l'autonomie de la batterie. Dans ce scénario, vous souhaitez réduire l'analyse en arrière-plan.

  • Analyse de code à la demande

    Si vous préférez désactiver l'exécution de l'analyseur dynamique, et exécuter manuellement l'analyse du code quand cela est nécessaire, vous devez minimiser l'analyse en arrière-plan. Pour plus d'informations, consultez Exécuter manuellement l'analyse de code pour .NET.

  • Analyse complète de la solution

    Si vous souhaitez voir tous les diagnostics de tous les fichiers de la solution, qu'ils soient ouverts ou non dans l'éditeur, vous pouvez étendre la portée de l'analyse en arrière-plan à l'ensemble de la solution.

Depuis Visual Studio 2019, vous pouvez personnaliser explicitement l’étendue de toutes les analyses du code dynamiques, notamment les calculs de diagnostic, pour les projets C# et Visual Basic. Les étendues d'analyse disponibles sont les suivantes :

Étendue Description
Aucun Tous les analyseurs et les correctifs de code correspondants sont désactivés.

Les diagnostics du compilateur et les correctifs de code correspondants sont activés sur tous les documents ouverts.
Document actif (par défaut) Tous les analyseurs s'exécutent uniquement sur le document actif.

Les diagnostics du compilateur sont activés sur tous les documents ouverts.
Documents ouverts Tous les analyseurs et diagnostics de compilateur sont activés sur tous les documents ouverts.
Solution complète Tous les analyseurs et les diagnostics du compilateur sont activés dans tous les documents de la solution, qu’ils soient ouverts ou fermés.
  • Document actif : Réduit l'étendue de l'analyse de code dynamique afin qu'elle s'exécute uniquement pour le fichier actif ou visible dans l'éditeur.
  • Documents ouverts : L’étendue de l’analyse du code dynamique comprend tous les documents ouverts. Il s’agit du paramètre par défaut.
  • Solution complète : Augmente l’étendue de l’analyse du code dynamique afin qu’elle s’exécute pour tous les fichiers et projets de l’ensemble de la solution.

Vous pouvez choisir l'une des étendues d'analyse personnalisée dans Options en suivant ces étapes :

  1. Pour ouvrir la boîte de dialogue Options, dans la barre de menus de Visual Studio, choisissez Outils>Options.

  2. Dans la boîte de dialogue Options, choisissez Éditeur de texte>C# (ou Visual Basic) >Avancé.

  1. Sélectionnez l'étendue de l'analyse en arrière-plan dans la liste déroulante Exécuter l'analyse du code en arrière-plan pour : afin de personnaliser l'étendue de l'analyse. Choisissez OK, une fois que vous avez fini.

    Capture d'écran des options relatives à l'étendue de l'analyse de code en arrière-plan dans Visual Studio.

  1. Sélectionnez l'étendue d'analyse en arrière-plan sous l'étendue d'analyse en arrière-plan :. Choisissez OK, une fois que vous avez fini.

    Capture d'écran des options relatives à l'étendue de l'analyse de code en arrière-plan dans Visual Studio.

Remarque

Avant Visual Studio 2019, vous personnalisez l'étendue de l'analyse du calcul des diagnostics pour la solution complète à l'aide de la case à cocher Activer l'analyse complète de la solution dans Outils>Options>Éditeur de texte>C# (ou l'onglet Visual Basic) >Avancé. Il n'existe aucune prise en charge de la réduction de l'étendue de l'analyse en arrière-plan dans les versions antérieures de Visual Studio.

Réduire automatiquement l’étendue de l’analyse du code dynamique

Si Visual Studio détecte qu'il dispose de 200 Mo ou moins de mémoire système, il réduit automatiquement l'étendue de l'analyse de code dynamique au Document actif. Lorsque cela se produit, une alerte s'affiche pour vous informer que Visual Studio désactive certaines caractéristiques. Pour plus d’informations, consultez Suspension automatique des fonctionnalités.

Capture d'écran montrant l'avertissement d'alerte indiquant que Visual Studio réduit l'étendue d'analyse.