Фильтрация решений в Visual Studio

Крупные группы разработчиков часто совместно работают в рамках одного большого решения с множеством проектов. При этом отдельные разработчики обычно работают с небольшим подмножеством таких проектов. Для повышения производительности при открытии больших решений в Visual Studio 2019 добавлена возможность фильтрации решений. Фильтры решений позволяют открыть решение с выборочной загрузкой проектов. Загрузка подмножества проектов в решении уменьшает время загрузки, сборки и тестирования решения и позволяет проводить более сфокусированную проверку.

Список доступных возможностей:

  • Вы можете быстрее перейти к коду, открыв решение без загрузки проектов. Открыв решение, вы можете выбрать, какие проекты следует загрузить.

  • При повторном открытии решения Visual Studio запоминает, какие проекты были загружены в предыдущем сеансе, и загружает только эти проекты.

  • Можно создать файл фильтра решений, чтобы сохранить одну или несколько конфигураций загрузки проектов или поделиться ими с другими участниками команды.

Примечание.

Этот раздел относится к Visual Studio в Windows.

Открытие отфильтрованного решения

Решение можно открыть, не загружая его проекты, непосредственно в диалоговом окне Открыть проект или из командной строки.

Диалоговое окно "Открыть проект"

Чтобы открыть решения без загрузки его проектов с помощью диалогового окна Открыть проект, сделайте следующее:

  1. В строке меню выберите Файл>Открыть>Решение или проект.

  2. В диалоговом окне Открыть проект выберите решение, а затем выберите Не загружать проекты.

    Visual Studio Open Project dialog with do not load projects checked

  3. Выберите команду Открыть.

    Решение открывается без загрузки проектов.

  4. В обозревателе решений выберите проекты, которые нужно загрузить (нажмите клавишу CTRL для выбора нескольких проектов), а затем щелкните проект правой кнопкой мыши и выберите пункт Перезагрузить проект.

    Reload multiple projects in Visual Studio Solution Explorer

    При следующем локальном открытии решения Visual Studio запоминает, какие проекты загружаются.

Командная строка

(новые возможности в Visual Studio 2019 версии 16.1)

Чтобы открыть решение без загрузки его проектов из командной строки, используйте параметр /donotloadprojects, как показано в следующем примере.

devenv /donotloadprojects MySln.sln

Переключение режима отображения незагруженных проектов

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

  • Щелкните решение правой кнопкой мыши и выберите Показать незагруженные проекты или Скрыть незагруженные проекты.

  • Выберите узел решения, чтобы активировать кнопку Показать все файлы. Нажмите кнопку, чтобы переключить режим отображения незагруженных проектов.

    Show All Files button in Visual Studio Solution Explorer

Загрузка зависимостей проектов

Если загружены только отдельные проекты решения, некоторые зависимости проектов могут не загрузиться. Убедиться в наличии всех зависимостей можно с помощью пункта меню Загрузить зависимости проекта. Щелкните правой кнопкой мыши один или несколько загруженных проектов в обозревателе решений и выберите Загрузить зависимости проекта.

Load project dependencies in Visual Studio 2019

Файлы фильтров решений

Если вы хотите совместно использовать конфигурацию загрузки проектов или зафиксировать ее в системе управления версиями, можно создать файл фильтра решений (он имеет расширение SLNF). При открытии файла фильтра решений решение открывается в Visual Studio с загрузкой указанных проектов (все незагруженные проекты будут скрыты). Вы можете переключать режим просмотра незагруженных проектов.

Файлы фильтров решений визуально отличаются от обычных файлов решений дополнительным воронкообразным глифом на значке рядом с решением в обозревателе решений. Имя фильтра и количество загруженных проектов также отображаются рядом с именем решения.

Solution filter file open in Visual Studio Solution Explorer

Примечание.

Если после создания файла фильтра решений в исходное решение добавляются новые проекты, они отображаются как незагруженные проекты в обозревателе решений.

Создание файла фильтра решений

  1. В обозревателе решений щелкните решение правой кнопкой мыши и выберите пункт Сохранить как фильтр решений.

    Save As Solution Filter menu in Visual Studio Solution Explorer

  2. Выберите имя и расположение файла фильтра решений.

После создания фильтра файл решений он добавляется в список Последние проекты и решения для быстрого доступа:

Open recent in Visual Studio