Udostępnij za pomocą


Zdalne debugowanie ASP.NET Core w usłudze Azure App Service (Windows)

W tym artykule opisano sposób dołączania debugera programu Visual Studio do aplikacji ASP.NET Core działającej w usłudze Azure App Service. Poniższe kroki umożliwiają debugowanie aplikacji tak, jakby była uruchomiona lokalnie.

Wymagania wstępne

  • Program Visual Studio 2022 z zainstalowanym pakietem roboczym ASP.NET i tworzeniem aplikacji internetowych oraz pakietem roboczym Programowanie na platformie Azure .

  • Najpierw należy wdrożyć aplikację ASP.NET Core w usłudze Azure App Service (Windows) z poziomu programu Visual Studio, a aplikacja musi być uruchomiona.

  • Profil wydania w programie Visual Studio musi być ustawiony na Debug zamiast Release przed opublikowaniem.

Włączanie zdalnego debugowania

Aby można było debugować ten problem z programem Visual Studio, należy włączyć funkcję debugowania zdalnego w usłudze App Service. To ustawienie umożliwia debugerowi programu Visual Studio nawiązanie połączenia z głównym procesem hostingu internetowego usługi App Service.

  1. Zaloguj się do własnej witryny Azure Portal.

    Znajdź wdrożona aplikację w witrynie Azure Portal. Aplikację można znaleźć, przechodząc do strony App Services, a następnie wybierając instancję App Service. Możesz również wyszukać instancję usługi App Service bezpośrednio, wpisując jej nazwę w pasku wyszukiwania u góry. (W tym przykładzie wystąpienie usługi App Service nosi nazwę GitHubBrowser123).

    Zrzut ekranu przedstawiający usługę Azure Search.

  2. Na stronie ustawień wystąpienia usługi App Service wybierz pozycję Konfiguracja po lewej stronie nawigacji, a następnie wybierz kartę Ustawienia ogólne .

  3. W dolnej części strony upewnij się, że ustawiono funkcję Debugowanie zdalne na Wł. i wybierz pozycję Visual Studio 2022 jako zdalną wersję programu Visual Studio.

    Zrzut ekranu przedstawiający ustawienia debugowania zdalnego platformy Azure.

  4. Wybierz pozycję Zapisz w górnej części strony, aby utrwały zmiany.

Instancja usługi App Service obsługuje teraz zdalne debugowanie za pośrednictwem programu Visual Studio.

Konfigurowanie ustawień debugowania

  1. Skompiluj aplikację bez błędów. Zatrzymaj aplikację, jeśli jest uruchomiona lokalnie.

    Uwaga / Notatka

    Upewnij się, że stan kodu lokalnego jest zgodny z tym, co zostało wdrożone na platformie Azure. Gwarantuje to, że lokalne pliki symboli i kod źródłowy są zgodne z wdrożoną aplikacją.

  2. Wybierz pozycję Opcje debugowania > w górnym menu programu Visual Studio. Upewnij się, że pozycja Włącz tylko mój kod nie jest zaznaczona (jak pokazano na poniższej ilustracji), a następnie wybierz przycisk OK.

    Zmiana tego ustawienia umożliwia programowi Visual Studio debugowanie zoptymalizowanego kodu wdrożonego na platformie Azure przy użyciu niezbędnych plików symboli z lokalnego folderu bin. Pliki symboli są używane przez debuger jako most między skompilowanym, wykonywaniem kodu i kodem źródłowym w programie Visual Studio. Pasujące pliki symboli są wymagane do zdalnego debugowania.

    Zrzut ekranu przedstawiający ustawienia debugowania programu Visual Studio.

    Zrzut ekranu przedstawiający ustawienia debugowania programu Visual Studio.

Dołączanie debugera do usługi App Service

  1. W menu głównym u góry programu Visual Studio wybierz Debug > Dołącz do procesu, aby otworzyć odpowiednie okno dialogowe. Za pomocą tego okna możesz nawiązać połączenie z różnymi obiektami docelowymi i dołączyć je do nich. W takim przypadku połączysz się z wystąpieniem usługi App Service, które utworzyłeś w poprzednim kroku.

  2. Wybierz listę rozwijaną Typ połączenia i wybierz opcję Microsoft Azure App Services .

  3. Wybierz pozycję Znajdź.. obok pola Cel połączenia , aby otworzyć okno dialogowe umożliwiające przeglądanie subskrypcji i usług aplikacji platformy Azure.

    Jeśli jeszcze nie zalogowałeś się przy użyciu subskrypcji platformy Azure, wybierz pozycję Znajdź... i możesz się zalogować.

  4. Znajdź i wybierz wystąpienie usługi App Service utworzone w poprzednim kroku, a następnie wybierz OK.

  5. Proces w3wp.exe powinien zostać wyświetlony na liście dostępnych procesów do nawiązania połączenia. w3wp.exe jest głównym procesem usługi Azure App Service, która hostuje wdrożona aplikację. w3wp.exe Wybierz proces, a następnie wybierz pozycję Dołącz w prawym dolnym rogu.

    Zrzut ekranu przedstawiający dołączanie do funkcji procesu.

  6. W pliku aplikacji języka C#, takim jak Index.cshtml.cs, ustaw punkt przerwania, klikając w lewym marginesie. Alternatywnie kliknij prawym przyciskiem myszy i wybierz pozycję Punkt przerwania>Wstaw punkt przerwania.

  7. W aplikacji internetowej przejdź do punktu końcowego z punktem przerwania. Jeśli jesteś dołączony do procesu, ale nie możesz trafić w punkt przerwania, upewnij się, że profil publikowania w programie Visual Studio jest ustawiony na konfigurację Debug zamiast Release.

  8. Opcjonalnie: Aby sprawdzić, czy program Visual Studio załadował pliki symboli dla sesji debugowania. Przejdź do pozycji Debugowanie > modułów systemu Windows>, aby otworzyć okno modułów. To okno wskazuje, że pliki symboli zostały pomyślnie załadowane po wprowadzeniu wcześniejszych zmian konfiguracji Tylko mój kod .

    Zrzut ekranu przedstawiający okno plików symboli.

Uwaga / Notatka

Aby przeprowadzić kolejne debugowanie usługi app Service, wybierz pozycję Debuguj>ponownie dołącz, aby w3wp.exe lub użyj skrótów Shift+Alt+P.