Сортировка методов в коде

171
08 июня 2018, 20:40

Имеет ли Visual Studio средства с помощью которых можно было бы выполнить сортировку методов в коде? Например, по алфавиту, по доступу и т п?

Если нет, то какие есть решения?

Answer 1

Поделюсь своим опытом по автоматическому форматированию C# кода без использования ReSharper-а.
Уже долгое время использую расширение CodeMaid для чистки кода. Расширение умеет:

  • форматировать код
  • удалять пустые строки
  • сортировать пространства имен
  • добавлять пропущенные модификаторы доступа
    и другое.

В том числе это расширение умеет и выполнять сортировку элементов класса документа по алфавиту(функция называется Code Reorganizing).
Расширение имеет два критерия сортировки:

  • тип элемента
  • уровень доступа элемента

Вот так выглядит основная его страница с настройками сортировки
Как видим, мы можем выбрать порядок критериев сортировки(что главнее, тип элемента, или доступ).
Каждый критерий имеет дополнительные настройки:
1. Критерий уровень доступа на этой же странице имеется переключатель для настройки порядка сортировки(от public к private или наоборот).
2. Критерий тип элемента настраивается на отдельной странице, где можно выбрать порядок расположения элементов. Например, можно настроить такой порядок: сначала идут конструктор(ы), потом поля класса, потом свойства, потом методы и так далее) Внутри группы элементы будут сортироваться по алфавиту! Обратный порядок сортировки у меня не работает!
Также типы элементов можно объединять в одну группу, чтобы внутри группы элементы имели равный приоритет и сортировались по алфавиту. Для примера, в приведенной настройке выше указано, что конструктор и поля класса должны сортироваться по алфавиту в одной группе(пример не совсем удачный, но это пример). Соответственно, конструктор класса будет отсортировать куда-то "в середину" полей класса.
Вызвать сортировку элементов вы можете через главное меню в VS или через контекстное меню редактора. Пункт меню для текущей версии расширения называется Reorganize active document

Таким образом, расширение CodeMaid позволяет выполнять сортировку элементов класса исходного кода для C#. Ну и кроме того, расширение будет полезно для использования других возможностей по чистке C# кода.

Answer 2

CodeFormatter

Features:

  • Format the class file (.cs) to arrange members of class in the proper order.
  • ...
READ ALSO
Помогите разобраться с массивами [закрыт]

Помогите разобраться с массивами [закрыт]

Народ помогитеНе могу никак освоить массивы в C#

139
Останавливается анимация в WPF

Останавливается анимация в WPF

Есть такой эллипс:

171
Печать DataGridVeiw

Печать DataGridVeiw

Нужна помощьКак мне распечатать всю таблицу из DGV? Я паршу информацию с бд таким образом:

158
Сохранение результата в переменной C#

Сохранение результата в переменной C#

Народ может и глупо звучить но не как не могу понять почему не работает

167