web-dev-qa-db-fra.com

Code de nettoyage Resharper - Comment affecter le tri des méthodes?

J'ai un nettoyage personnalisé et c'est presque «là».

Cependant, R # semble vouloir trier les méthodes membres, mais au moins cela ne semble pas être alphabétique.

Y at-il un moyen de forcer ce tri?

47
Anders Juul

Personnaliser la mise en page peut en effet être réalisé avec Resharper. Aller à:

Resharper-> Options-> Langues-> C # -> Style de formatage-> Disposition des membres types

ReSharper 2017

Resharper -> Options-> Édition de code -> C # -> Structure du fichier -> Implémentations d'interface/Tous les autres membres

et décochez l'option "Utiliser les modèles par défaut".

Maintenant, vous voudrez éditer le XML dans la boîte "Patterns personnalisés". Je vous recommande de le copier dans un éditeur capable de lire correctement le code XML (le bloc-notes ++ ou Visual Studio devrait fonctionner correctement).

Maintenant, trouvez la section près du bas:

    <!--all other members-->
    <Entry/>

et le changer pour:

    <!--all other members-->
    <Entry>
      <Match>
        <Kind Is="method"/>
      </Match>
      <Sort>
        <Name/>
      </Sort>
    </Entry>

Maintenant, assurez-vous que votre profil de nettoyage a "Réorganiser les membres de type", puis cliquez avec le bouton droit de la souris sur le nom du fichier dans l'explorateur de solution et faites "Code de nettoyage ...". Je viens d’essayer moi-même et les méthodes sont classées par ordre alphabétique.

Si vous souhaitez également trier par type d'accès, vous pouvez ajouter ceci sous l'élément <Sort>:

<Access Order="public protected internal private" />

Voici un article pour en savoir plus.

86
James Kolpack

Resharper-> Options-> Langues-> C # -> Disposition du fichier

Sélectionnez "Tous les autres membres" et sélectionnez "Trier par nom" (mis en évidence en bas à droite de la photo).

 Options screen

21
Jacob Brewer

Dans la structure du fichier XML, vous devez ajouter l'élément Entry.SortBy . Par exemple, dans Tous les autres membres:

 <Entry DisplayName="All other members">
  <Entry.SortBy>
    <Name />
  </Entry.SortBy>
</Entry>

Le problème avec la version 9.2 est que lorsque la valeur Entry.SortBy est absente de XML, la valeur sélectionnée dans le concepteur n'est pas enregistrée.

0
George Kargakis