Как я могу извлечь все классы в отдельный файл?

Я использую пробную версию Resharper и VS2008. Можно ли извлечь все классы из одного файла в отдельный файл? Я могу сделать это с помощью Resharper, но он работает только для отдельных классов. Это должно использоваться в файле, который был автоматически сгенерирован с длиной в 65 000 строк.

Ответ 1

Если вы используете ReSharper 5, в проводнике решений нажмите Ctrl + Shift + R, чтобы вызвать меню Refactor (или, в качестве альтернативы, щелкнуть правой кнопкой мыши и найти его) и выбрать "Переместить типы в файлы соответствия"

Ответ 2

Для тех, кто использует более новую версию Visual Studio, есть еще одно решение (я понимаю, что этот вопрос упоминает VS 2008). Visual Studio 2017 предлагает функциональность, аналогичную описанной Эдуардо Молтени для CodeRush. Вы просто нажимаете на название класса, нажимаете на значок лампочки слева и выбираете "Переместить тип в xxxx.cs".

Visual Studio 2017 move class

Ответ 4

В дополнение к решению Скотта, в Visual Studio Marketplace есть бесплатный инструмент рефакторинга, который называется Move Type to File.

Он может массово перемещать типы в свои отдельные файлы, например так:

Он также предоставляет быстрый способ перемещения типа, выделенного курсором (по умолчанию Ctrl + Shift + F1).

Спасло меня много ручной работы...