Préférences de style de code

Vous pouvez définir des paramètres de style de code par projet en utilisant un fichier EditorConfig, ou pour tout le code que vous éditez dans Visual Studio dans la page Options de l’éditeur de texte. Pour le code C#, vous pouvez aussi configurer Visual Studio pour appliquer ces préférences de style de code avec les commandes Nettoyage du code (Visual Studio 2019, Visual Studio 2022) et Mettre en forme le document (Visual Studio 2017).

Styles de code dans les fichiers EditorConfig

Vous pouvez aussi spécifier des paramètres de style de code pour .NET en ajoutant un fichier EditorConfig à votre projet. Les fichiers EditorConfig sont associés à un code base plutôt qu’à un compte de personnalisation Visual Studio. Les paramètres d’un fichier EditorConfig sont prioritaires sur les styles de code spécifiés dans la boîte de dialogue Options. Utilisez un fichier EditorConfig lorsque vous souhaitez appliquer des styles de codage pour tous les contributeurs à votre référentiel ou projet.

Vous pouvez remplir manuellement votre fichier EditorConfig, ou vous pouvez générer automatiquement le fichier en fonction des paramètres de style de code que vous avez définis dans la boîte de dialogue Options de Visual Studio. Cette page d’options est disponible via Outils>Options>Éditeur de texte> [C# ou Basic] >Style de code>Général. Cliquez sur Générer le fichier .editorconfig à partir des paramètres pour générer automatiquement un fichier .editorconfig de style de codage basé sur les paramètres de cette page Options.

Capture d’écran de Générer le fichier editorconfig à partir des paramètres.

Vous pouvez remplir manuellement votre fichier EditorConfig, ou vous pouvez générer automatiquement le fichier en fonction des paramètres de style de code que vous avez définis dans la boîte de dialogue Options de Visual Studio. Cette page d’options est disponible dans Outils>Options>Éditeur de texte> [C# ou Visual Basic] >Style de code>Général. Cliquez sur Générer le fichier .editorconfig à partir des paramètres pour générer automatiquement un fichier .editorconfig de style de codage basé sur les paramètres de cette page Options.

Capture d’écran de Générer le fichier editorconfig à partir des paramètres.

Styles de code dans la boîte de dialogue Options

Vous pouvez définir les préférences de style de code pour tous vos projets C# et Visual Basic dans la boîte de dialogue Options accessible à partir du menu Outils. Dans la boîte de dialogue Options, sélectionnez Éditeur de texte> [C# ou Visual Basic] >Style de code>Général.

Vous pouvez définir les préférences de style de code pour tous vos projets C# et Visual Basic dans la boîte de dialogue Options accessible à partir du menu Outils. Dans la boîte de dialogue Options, sélectionnez Éditeur de texte> [C# ou Basic] >Style de code>Général.

Chaque élément de la liste affiche un aperçu de la préférence sélectionnée :

Capture d’écran des options de style de code.

Capture d’écran des options de style de code.

Les options définies dans cette fenêtre sont applicables à votre compte de personnalisation Visual Studio et ne sont pas associées à un projet ou code base particulier. Elles ne sont non plus appliquées au moment de la génération, y compris dans les builds d’intégration continue (CI). Si vous voulez associer des préférences de style de code à votre projet et que les styles soient appliqués lors de la génération, spécifiez les préférences dans un fichier .editorconfig associé au projet.

Préférence et gravité

Pour chaque paramètre de style de code de cette page, vous pouvez définir les valeurs Préférence et Gravité en utilisant les listes déroulantes sur chaque ligne. L’option Gravité peut avoir la valeur Refactorisation uniquement, Suggestion, Avertissement ou Erreur. Si vous souhaitez activer les actions rapides pour un style de code, vérifiez que la valeur de l’option Gravité n’est pas Refactorisation uniquement. L’icône d’ampoule Actions rapides, d’ampoule d’erreur ou de tournevis apparaît quand un style qui n’est pas un style par défaut est utilisé. Vous pouvez choisir une option dans la liste Actions rapides pour réécrire automatiquement le code avec le style par défaut.

Appliquer des styles de code sur la build

À compter de Visual Studio 2019 version 16.8, qui inclut le Kit de développement logiciel (SDK) .NET 5.0 RC2, vous pouvez appliquer les conventions de codage .NET lors de la génération pour tous les projets .NET. Au moment de la génération, les violations de style de code .NET apparaissent sous forme d’avertissements ou d’erreurs avec un préfixe « IDE ». Cela vous permet d’appliquer strictement des styles de code cohérents dans votre codebase.

Appliquer des styles de code

Pour les fichiers de code C#, Visual Studio dispose d’un bouton Nettoyage du code en bas de l’éditeur (clavier : Ctrl+K, Ctrl+E) pour appliquer des styles de code à partir d’un fichier EditorConfig ou de la page d’options Style de code. S’il existe un fichier .editorconfig pour le projet, ces paramètres sont prioritaires.

Astuce

Les règles configurées avec la gravité Aucune ne participent pas au nettoyage du code. Toutefois, elles peuvent être appliquées individuellement via le menu Actions rapides et refactorisations.

Pour appliquer des styles de code :

  1. Configurez d’abord les styles de code que vous voulez appliquer (dans un des deux profils) dans la boîte de dialogue Configurer le nettoyage du code. Pour ouvrir cette boîte de dialogue, cliquez sur la flèche en regard de l’icône de balai de nettoyage du code, puis choisissez Configurer le nettoyage du code.

    Capture d’écran de Configurer le nettoyage du code.

  2. Une fois que vous avez configuré le nettoyage du code, utilisez l’une des méthodes suivantes pour exécuter le nettoyage du code :

    • Cliquez sur l’icône de balai ou appuyez sur Ctrl+K, Ctrl+E pour exécuter le nettoyage du code.

      Capture d’écran de l’exécution du nettoyage du code.

    • Pour exécuter le nettoyage du code dans l’ensemble de votre projet ou solution, cliquez avec le bouton droit sur le nom du projet ou de la solution dans Explorateur de solutions, sélectionnez Analyser et nettoyer le code, puis sélectionnez Exécuter le nettoyage du code.

      Capture d’écran de l’exécution du nettoyage du code dans l’ensemble du projet ou de la solution.

    Si vous voulez que vos paramètres de style de code soient appliqués chaque fois que vous enregistrez un fichier, vous pouvez utiliser l’extension Code Cleanup on Save.

Pour les fichiers de code C#, Visual Studio dispose d’un bouton Nettoyage du code en bas de l’éditeur (clavier : Ctrl+K, Ctrl+E) pour appliquer des styles de code à partir d’un fichier EditorConfig ou de la page d’options Style de code. S’il existe un fichier .editorconfig pour le projet, ces paramètres sont prioritaires.

Astuce

Les règles configurées avec la gravité Aucune ne participent pas au nettoyage du code. Toutefois, elles peuvent être appliquées individuellement via le menu Actions rapides et refactorisations.

Pour appliquer des styles de code :

  1. Configurez d’abord les styles de code que vous voulez appliquer (dans un des deux profils) dans la boîte de dialogue Configurer le nettoyage du code. Pour ouvrir cette boîte de dialogue, cliquez sur la flèche en regard de l’icône de balai de nettoyage du code, puis choisissez Configurer le nettoyage du code.

    Capture d’écran de Configurer le nettoyage du code.

  2. Une fois que vous avez configuré le nettoyage du code, utilisez l’une des méthodes suivantes pour exécuter le nettoyage du code :

    • Cliquez sur l’icône de balai ou appuyez sur Ctrl+K, Ctrl+E.

      Capture d’écran de l’exécution du nettoyage du code.

    • Pour exécuter le nettoyage du code dans l’ensemble de votre projet ou solution, cliquez avec le bouton droit sur le nom du projet ou de la solution dans Explorateur de solutions, sélectionnez Analyser et nettoyer le code, puis sélectionnez Exécuter le nettoyage du code.

      Capture d’écran de l’exécution du nettoyage du code dans l’ensemble du projet ou de la solution.

    Si vous souhaitez que vos paramètres de style de code soient appliqués chaque fois que vous enregistrez un fichier, accédez à Options>Éditeur de texte>Nettoyage du code et sélectionnez Exécuter le profil de nettoyage du code lors de l’enregistrement.

Paramètres de nettoyage du code

La plupart des paramètres de nettoyage de code sont mappés à un ou plusieurs styles de code .NET pris en charge dans .editorconfig. Pour obtenir des exemples montrant les effets des paramètres, utilisez les liens du tableau suivant.

Paramètre ID de règle ou option de style
Supprimer les Imports inutiles ou les usings IDE0005
Trier les importations ou les utilisations dotnet_sort_system_directives_first
dotnet_separate_import_directive_groups
Appliquer les préférences d’en-tête de fichier file_header_template
Supprimer les variables inutilisées CS0219
Appliquer les préférences de création d’objets visual_basic_style_prefer_simplified_object_creation
Appliquer les préférences IsNot visual_basic_style_prefer_isnot_expression
Ajouter la qualification « this » ou « Me » IDE0003-IDE0009
Ajouter des modificateurs d’accessibilité dotnet_style_require_accessibility_modifiers
Ordonner les modificateurs IDE0036
Rendre le champ readonly dotnet_style_readonly_field
Supprimer les casts inutiles IDE0004
Appliquer des paramètres d’initialisation d’objet/collection) dotnet_style_object_initializer
Appliquer en utilisant les préférences de placement des directives csharp_using_directive_placement
Appliquer les préférences relatives aux parenthèses IDE0047-IDE0048
Appliquer les préférences de valeur inutilisées IDE0058
Appliquer les préférences de type pour le langage/framework IDE0049
Supprimer les suppressions inutilisées dotnet_remove_unnecessary_suppression_exclusions
Appliquer les préférences d’expression booléenne simplifiées dotnet_style_prefer_simplified_boolean_expressions
Appliquer les préférences d’interpolation de chaîne dotnet_style_prefer_simplified_interpolation
Supprimer les paramètres inutilisés dotnet_code_quality_unused_parameters
Appliquer les préférences de propriété automatique dotnet_style_prefer_auto_properties
Appliquer les préférences d’affectation composée dotnet_style_prefer_compound_assignment
Appliquer les préférences d’expression coalesce dotnet_style_coalesce_expression
Appliquer les préférences d’expression conditionnelle dotnet_style_prefer_conditional_expression_over_assignment
dotnet_style_prefer_conditional_expression_over_return
Appliquer les préférences de nom de tuple dotnet_style_explicit_tuple_names
dotnet_style_prefer_inferred_tuple_names
Appliquer les préférences inférées de noms de membres de type anonyme dotnet_style_prefer_inferred_anonymous_type_member_names
Appliquer les préférences en matière de contrôle de null dotnet_style_prefer_is_null_check_over_reference_equality_method
Appliquer les préférences de propagation de null dotnet_style_null_propagation
Appliquer les préférences 'var' IDE0007-IDE0008
Ajout des accolades nécessaires pour les instructions de contrôle sur une seule ligne csharp_prefer_braces
Appliquer les préférences de corps pour l’expression/le bloc Membres expression-bodied
Appliquer les préférences de variables ‘out’ inline csharp_style_inlined_variable_declaration
Appliquer les préférences relatives aux critères spéciaux Pattern-matching preferences
Appliquer les préférences d’appel de délégué conditionnel csharp_style_conditional_delegate_call
Appliquer les préférences de fonction locale statique csharp_prefer_static_local_function
Appliquer les préférences de déconstruction csharp_style_deconstructed_variable_declaration
Appliquer les préférences default(T) csharp_prefer_simple_default_expression
Appliquer les préférences new() csharp_style_implicit_object_creation_when_type_is_apparent
Appliquer les préférences de plage csharp_style_prefer_range_operator
Appliquer les préférences de fonction locales plutôt qu’anonymes csharp_style_pattern_local_over_anonymous_function
Appliquer les préférences null du paramètre Préférences de vérification de valeur null
Appliquer les préférences d’instruction using csharp_prefer_simple_using_statement
Appliquer les préférences d’expression throw csharp_style_throw_expression

::: moniker-end