Есть ли расширение Visual Studio 2010 для сортировки методов? - PullRequest
7 голосов
/ 04 декабря 2011

StyleCop требует определенного порядка сортировки содержимого файлов C #. Например, поля должны быть объявлены до того, как методы, а публичные объявления должны предшествовать частным.

Было бы полезно иметь расширение Visual Studio для автоматического перемещения этих элементов в этом порядке.

Существует ли для этого хорошее расширение (я обнаружил CodeSorter , но отзывы показывают, что оно очень глючное)? Или есть какие-либо расширения или ярлыки, которые делают менее болезненным изменение порядка содержимого вручную?

Ответы [ 5 ]

8 голосов
/ 04 декабря 2011

Вы можете попробовать с Regionerate :

Regionerate - это автоматизированный инструмент, который поможет вам сохранить ваши макет кода с течением времени. Regionerate позволяет вам определять регионы в вашем код и определить способ членов (поля, методы, свойства и т. д.) должны быть размещены внутри них. Regionerate - инструмент с нулевым трением - при настройке вы можете выбрать макет кода (так, как вы хотите, чтобы ваш код, чтобы посмотреть) или просто использовать макет кода по умолчанию. С того момента Regionerate будет следить за тем, чтобы ваш код соответствовал расположению кода.

6 голосов
/ 04 декабря 2011

ReSharper может сделать это.Он имеет функцию «Типовая структура членов», которая позволяет вам использовать набор правил по умолчанию или определять свои собственные.

5 голосов
/ 16 июня 2012

CodeMaid - это бесплатное расширение Visual Studio с открытым исходным кодом, которое реорганизует код в соответствии с соглашениями StyleCop. Вы можете найти его здесь: http://visualstudiogallery.msdn.microsoft.com/76293c4d-8c16-4f4a-aee6-21f83a571496

Отказ от ответственности: это абсолютно бесстыдный плагин, я написал это. ;)

1 голос
/ 22 декабря 2011

Я использую ReSharper и их тип Member Layout.Смотрите мой пост для более подробной информации.

0 голосов
/ 26 апреля 2015

Если сортировка кода является вашей единственной задачей, вы можете попробовать расширение Visual Studio CodeSorter

CodeSorter - настраиваемое расширение, позволяющее пользователям сортировать код C # по различным условиям, таким как имена, типы (метод, class, struct, ...), модификаторы видимости (private, public, ...), модификаторы constness (const, static, readonly) и модификаторы виртуальности (виртуальный, переопределить, новый, ...).

Можно назначить несколько критериев поиска, чтобы иметь одинаковые приоритет, например, поместите защищенных и частных членов в первую очередь, и затем общественность и внутренние органы.

Имена сравниваются таким образом, что ведущие "m_" и "_" удаляются. Это позволяет полям и свойствам (например, _foo и Foo) быть рядом друг другу.

Однострочные объявления размещаются без разделительной строки, а многострочные объявления разделяются пустой строкой. Исключение является то, что однолинейное поле сопровождается многолинейным свойством без комментарий с тем же именем будет размещен без пробела линия.

...