c# visual ReSharper-force des accolades autour d'une seule ligne




resharper visual studio 2015 (4)

Puis-je configurer ReSharper pour corriger le code C # lorsque les accolades ne sont pas utilisées pour entourer un bloc de code d'une seule ligne, comme ceci:

if (blnSomeCondition)
   DoSomething();  // complain

if (blnSomeOtherCondition)
{
   DoSomethingElse(); // don't complain
}

Merci


Pour ReSharper 2016.2.2 .

Vous devriez éditer votre profil pour le nettoyage. L'élément correct est appelé Ajouter / Supprimer des accolades pour les instructions simples dans "if-else", "for", "foreach", "while", "do-while", "using" . Cet élément peut être trouvé dans l'article C # => Styles de code .

Si l'élément est coché, des accolades seront ajoutées; Si cette case n'est pas cochée, les accolades seront supprimées.

Note: l'ajout ne fonctionne pas maintenant (ne sais pas pourquoi - peut-être, une version trop récente de ReSharper). Toutefois, si vous décochez l'élément mentionné, les accolades existantes autour des instructions uniques ne seront pas supprimées.

UPD: Le problème résolu, voir les deux premiers commentaires sous ce post.


Dans la nouvelle version de ReSharper (2016.x) a été déplacé vers le style de code.

** UPD1: pour ReSharper 2017.x **

** UPD2: pour ReSharper 2018.x **


La solution de Gorohoroh est proche, mais au lieu de sélectionner «Utiliser des accolades pour multilignes», j'ai dû sélectionner «Ajouter des accolades» pour le forcer à ajouter les accolades dans le scénario à une ligne. Et j'ai dû mettre cela dans les six listes déroulantes sous "Force Braces" pour attraper tous les scénarios:

Ce que j'espérais vraiment, c'était d'être capable de configurer ReSharper pour faire un avertissement jaune ou une erreur rouge quand la règle a été violée, mais je n'ai pas trouvé un moyen de le faire. Parce que vous avez raison, Gorohoroh, Cleanup Code fait beaucoup de choses et j'aimerais avoir l'option de regarder et de corriger les violations de règles une à la fois.

Merci de votre aide!


Ryan a raison (notez cependant que son lien fait référence à l'aide R # 2.0). La procédure spécifique est la suivante:

  1. Accédez à ReSharper> Options> Langues> C #> Style de mise en forme> Mise en page des accolades
  2. Définissez "Accolades dans" if-else "statement" à "Use braces for multiline"
  3. Après avoir enregistré les modifications, sélectionnez une étendue à reformater (peut être une sélection de code, un fichier, un dossier, un projet, une solution - tout ce que vous voulez).
  4. Choisissez ReSharper> Outils> Code de nettoyage.
  5. Profit.

Souvenez-vous que le nettoyage de code effectue de nombreuses opérations et qu'elles ne sont pas uniquement liées à la mise en forme du code (voir les détails sur http://www.jetbrains.com/resharper/webhelp/Code_Cleanup__Index.html ), utilisez donc la fonctionnalité à bon escient.





resharper