Resharper Clean-up Code - как повлиять на сортировку методов?
У меня есть индивидуальная уборка, и она почти "там".
Тем не менее, R#, похоже, хочет отсортировать методы-члены, но, по крайней мере, не в алфавитном порядке.
Есть ли способ заставить эту сортировку?
3 ответа
Настройка макета действительно может быть выполнена с помощью Resharper. Идти к:
Resharper-> Параметры-> Языки->C#-> Стиль форматирования-> Тип элементов Макет
ReSharper 2017
Resharper -> Параметры-> Редактирование кода ->C#-> Структура файла -> Реализации интерфейса / Все остальные члены
и снимите флажок "Использовать шаблоны по умолчанию".
Теперь вам нужно отредактировать xml в поле "Custom Patterns". Я бы порекомендовал скопировать его в редактор, который может правильно подсвечивать 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" />
Вот статья, чтобы узнать больше.
Resharper-> Параметры-> Языки->C#-> Расположение файлов
Выберите "Все остальные участники" и выберите "Сортировать по имени" (выделено в правом нижнем углу рисунка)
В макете файла XML вы должны добавить элемент Entry.SortBy, например, в All all members:
<Entry DisplayName="All other members">
<Entry.SortBy>
<Name />
</Entry.SortBy>
</Entry>
Проблема с 9.2 состоит в том, что, когда Entry.SortBy отсутствует в XML, выбранное значение из конструктора не сохраняется.