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


Удаленная отладка ASP.NET Core в Службе приложений Azure (Windows)

В этой статье описывается подключение отладчика Visual Studio к приложению ASP.NET Core, работающему в Службе приложений Azure. Следующие шаги позволяют отлаживать приложение, как если бы оно выполнялось локально.

Предпосылки

  • Visual Studio 2022 с установленными ASP.NET и веб-разработкой и рабочей нагрузкой для разработки Azure.

  • Сначала необходимо развернуть приложение ASP.NET Core в Службе приложений Azure (Windows) из Visual Studio, а приложение должно быть запущено.

    Дополнительные сведения об обучении, включающем развертывание службы приложений, см. в статье "Удаленная отладка" ASP.NET Core в Azure.

  • Профиль публикации в Visual Studio должен быть установлен на Debug вместо Release перед публикацией.

Включение удаленной отладки

Перед отладкой этой проблемы с Visual Studio необходимо включить функцию удаленной отладки в службе приложений. Этот параметр позволяет отладчику Visual Studio подключаться к основному процессу веб-размещения службы приложений.

  1. Войдите на собственный портал Azure.

    Найдите развернутое приложение на портале Azure. Приложение можно найти, перейдя на страницу "Служба приложений", а затем выбрав экземпляр службы приложений. Вы также можете выполнить поиск экземпляра службы приложений непосредственно по имени в строке поиска в верхней части. (В этом примере экземпляр службы приложений называется GitHubBrowser123.)

    Снимок экрана: поиск Azure.

  2. На странице параметров для экземпляра Службы приложений выберите "Конфигурация " в левой области навигации, а затем перейдите на вкладку "Общие параметры ".

  3. В нижней части страницы убедитесь, что функция удаленной отладки установлена в положение Вкл и выберите Visual Studio 2022 в качестве версии Remote Visual Studio.

    Снимок экрана: параметры удаленной отладки Azure.

  4. Нажмите кнопку "Сохранить " в верхней части страницы, чтобы сохранить изменения.

Теперь экземпляр службы приложений поддерживает удаленную отладку с помощью Visual Studio.

Настройка параметров отладки

  1. Создайте приложение без ошибок. Остановите приложение, если оно работает локально.

    Замечание

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

  2. Выберите "Параметры отладки>" в верхнем меню Visual Studio. Убедитесь, что флажок "Включить только мой код" снят (как показано ниже), а затем нажмите кнопку "ОК".

    Изменение этого параметра позволяет Visual Studio отлаживать оптимизированный код, развернутый в Azure, используя необходимые файлы символов из локальной папки bin. Файлы символов используются отладчиком в качестве моста между компиляцией, выполнением кода и исходным кодом в Visual Studio. Для удаленной отладки требуются соответствующие файлы символов.

    Снимок экрана: параметры отладки Visual Studio.

Присоединение отладчика к службе приложений

  1. В главном меню в верхней части Visual Studio выберите "Отладка > Присоединить к процессу", чтобы открыть соответствующее диалоговое окно. С помощью этого окна можно подключиться и присоединиться к разным целям. В этом случае вы подключитесь к экземпляру службы приложений, созданному на предыдущем шаге.

  2. Выберите раскрывающийся список "Тип подключения" и выберите параметр "Службы приложений Microsoft Azure ".

  3. Выберите Find.. Рядом с полем "Целевой объект подключения ", чтобы открыть диалоговое окно, позволяющее просматривать подписки Azure и службы приложений.

    Если вы еще не вошли в подписку Azure, выберите "Найти..." , а затем выполните вход.

  4. Найдите и выберите экземпляр службы приложений, созданный на предыдущем шаге, и нажмите кнопку "ОК".

  5. Процесс w3wp.exe должен отображаться в списке доступных процессов для подключения. w3wp.exe — это основной процесс службы приложений Azure, на котором размещено развернутое приложение. w3wp.exe Выберите процесс и нажмите кнопку "Присоединить" в правом нижнем углу.

    Снимок экрана функции присоединения к процессу.

  6. В файле приложения C#, Index.cshtml.csнапример, задайте точку останова, щелкнув в левом поле. Кроме того, щелкните правой кнопкой мыши и выберите точку останова>Вставить точку останова.

  7. В веб-приложении перейдите к конечной точке с точкой останова. Если вы подключены к процессу, но не можете попасть в точку останова, убедитесь, что профиль публикации в Visual Studio имеет конфигурацию отладки вместо конфигурации выпуска.

  8. Необязательно. Чтобы убедиться, что Visual Studio загружает файлы символов для сеанса отладки. Перейдите к отладке > модулей Windows>, чтобы открыть окно модулей. Это окно указывает, что файлы символов были успешно загружены после изменения конфигурации Только мой код, внесенных ранее.

    Снимок экрана: окно файлов символов.

Замечание

Для последующей отладки службы приложений выберите Отладка> или повторно прикрепитесь к w3wp.exe, либо используйте клавиши быстрого доступа Shift+Alt+P.