Подтвердить что ты не робот

Resharper Clean-Up Code - как повлиять на сортировку методов?

У меня есть индивидуальная очистка, и она почти "там".

Однако R #, похоже, хочет сортировать методы-члены, но, по крайней мере, он не выглядит в алфавитном порядке.

Есть ли способ заставить эту сортировку?

4b9b3361

Ответ 1

Настройка макета действительно может быть выполнена с помощью Resharper. Перейдите к:

Resharper- > Options- > Languages- > С# → Formatting Style- > Type Members Layout

ReSharper 2017

Resharper → Параметры- > Редактирование кода → С# → Макет файла → Реализации интерфейса/Все остальные члены

и снимите флажок "Использовать шаблоны по умолчанию".

Теперь вам нужно отредактировать xml в поле "Пользовательские шаблоны". Я бы рекомендовал скопировать его в редактор, который может правильно приветствовать xml (notepad ++ или visual studio должны работать нормально).

Теперь найдите раздел внизу:

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

и измените его на:

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

Теперь убедитесь, что в вашем профиле очистки есть члены типа "Изменить порядок", а затем щелкните правой кнопкой мыши имя файла в проводнике решений и сделайте "Код очистки...". Я просто пробовал это сам, и он упорядочивает методы в алфавитном порядке.

Если вы хотите также сортировать по типу доступа, вы можете добавить это под элементом <Sort>:

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

Здесь статья, чтобы узнать больше.

Ответ 2

Resharper- > Options- > Languages- > С# → Макет файла

Выберите "Все остальные члены" и выберите "Сортировать по имени" (выделено в нижнем правом углу рис.)

Экран параметров

Ответ 3

В макете XML файла вы должны добавить элемент Entry.SortBy Например, для всех остальных участников:

  <!-- language: lang-xml -->

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

Проблема с 9.2 заключается в том, что при отсутствии элемента Entry.SortBy из XML выбранное значение из конструктора не сохраняется.