Поделиться через


Настройка нескольких запускаемых проектов

Visual Studio позволяет указать, как выполняется несколько проектов при нажатии клавиши F5 (начать с отладки) или CTRL+F5 (запуск без отладки) или с помощью кнопки панели инструментов для запуска приложения. Таким образом, можно запустить несколько сайтов, приложений или служб, которые зависят друг от друга для правильной работы во время сеанса отладки или простого запуска и тестирования локально.

Некоторые шаблоны проектов включают несколько проектов, которые уже настроены для запуска; Например, тип проекта React и ASP.NET Core включает как клиентский проект JavaScript, так и серверный проект ASP.NET Core, который запускается при запуске.

Настройка нескольких запускаемых проектов

  1. В обозревателе решенийвыберите решение (верхний узел).

  2. Выберите контекст узла решения (щелкните правой кнопкой мыши) и выберите пункт Свойства. Откроется диалоговое окно страниц свойств решения.

    страницы свойств решения

  3. Разверните узел общих свойств и выберите начальный проект.

  4. Выберите параметр Несколько проектов запуска и задайте соответствующие действия.

Профили запуска нескольких проектов

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

Включение профиля запуска с несколькими проектами

  1. В области"Параметры>" разверните раздел "Все параметры>предварительного просмотра компонентов".

  2. Установите флажок "Включить многопроектные профили запуска".

Профили запуска с несколькими проектами доступны в Visual Studio 2022 17.11 и более поздних версиях.

  1. В диалоговом окне"Параметры>" разверните раздел"Функции предварительной версии>".

  2. Установите флажок "Включить профили запуска с несколькими проектами " и нажмите кнопку "ОК".

снимок экрана с параметром включения профилей запуска с несколькими проектами в диалоговом окне

Создание мультипроектного профиля запуска

  1. Откройте решение Visual Studio, содержащее несколько проектов.

  2. В обозревателе решений щелкните правой кнопкой мыши решение и выберите пункт "Настройка запуска проектов...".

    Вы также можете нажать Ctrl+Q (быстрый запуск) и выполнить поиск по запросу "Настройка проектов запуска" в поиске функций.

    Снимок экрана, показывающий поиск настройки запускаемых проектов в Поиске Компонентов.

    Диалоговое окно страниц свойств решения открывается.

  3. На страницах свойств решения перейдите на вкладку "Общие свойства " и выберите "Настроить запускаемые проекты".

  4. В разделе Настройка запускаемых проектов выберите переключатель несколько запускаемых проектов.

    снимок экрана с радиокнопкой

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

    Стрелки вверх и вниз можно использовать для управления порядком запуска проектов.

  5. Задайте для каждого проекта значение Пуск, Запуск без отладкиили Noneи выберите целевой объект отладки в зависимости от ваших требований.

    снимок экрана с параметрами запуска проекта.

  6. Установите флажок Общий доступ к профилю, если вы хотите поделиться профилем с другими пользователями Visual Studio, добавив его в файл конфигурации в репозитории системы управления версиями. Профили запуска сохраняются в JSON-файле с расширением .slnLaunch в том же каталоге, что и решение. Флажок 'Общий доступ профиля' определяет, будет ли профиль сохранен в файл, предназначенный индивидуально для пользователя (если флажок снят), или в файл, предназначенный для отслеживания изменений с помощью системы управления версиями, например, для Git (если флажок установлен).

    снимок экрана, показывающий флажок

    Ниже приведен пример профиля в файле .slnLaunch:

    [
       {
          "Name": "Feature Profile",
          "Projects": [
             {
             "Path": "src\\OrchardCore.Cms.Web\\OrchardCore.Cms.Web.csproj",
             "Action": "Start"
             },
             {
             "Path": "src\\OrchardCore\\OrchardCore.DisplayManagement\\OrchardCore.DisplayManagement.csproj",
             "Action": "Start"
             },
             {
             "Path": "src\\OrchardCore\\OrchardCore.Data\\OrchardCore.Data.csproj",
             "Action": "StartWithoutDebugging"
             },
             {
             "Path": "src\\OrchardCore\\OrchardCore.ContentManagement.Display\\OrchardCore.ContentManagement.Display.csproj",
             "Action": "Start"
             }
          ]
       }
    ]
    
  7. После настройки действия запуска для каждого проекта нажмите кнопку "ОК " или " Применить ", чтобы сохранить профиль. Созданный профиль запуска отображается в раскрывающемся списке панели инструментов, что позволяет выбрать профиль, который требуется отладить.

    Скриншот, показывающий профиль запуска на панели инструментов.

С использованием Docker Compose

При использовании Docker Compose для запуска контейнерных проектов на локальном компьютере используется другой метод (профили запуска) для запуска нескольких проектов.

В следующем примере показано решение WebFrontEndA с тремя проектами, внешним веб-сайтом, проектом веб-API и проектом Docker Compose. На следующем снимку экрана показано, как запустить два из трех проектов, один с отладкой и без нее:

снимок экрана страниц свойств решения.

В этом примере и любом другом сценарии Docker Compose вы выбираете docker-compose в качестве одного запускаемого проекта, но затем используется другой способ указания проектов или служб для запуска. Вы используете профиль запуска Docker Compose, чтобы определить, какие службы следует запустить, и следует ли подключить отладчик, а также существует другое диалоговое окно в Visual Studio для настройки. См. раздел Запуск подмножества служб. Диалоговое окно "Страницы свойств решения" используется только для неконтейнеризированных решений или когда Docker Compose не используется для управления запуском.