Zdalne debugowanie ASP.NET Core w usłudze aplikacja systemu Azure (Windows)
W tym artykule opisano sposób dołączania debugera programu Visual Studio do aplikacji ASP.NET Core działającej w usłudze aplikacja systemu Azure 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 aplikacja systemu Azure (Windows) z programu Visual Studio, a aplikacja musi być uruchomiona.
Aby zapoznać się z praktycznym szkoleniem obejmującym wdrożenie usługi App Service, zobacz Remote debug ASP.NET Core na platformie Azure.
Profil publikowania w programie Visual Studio musi być ustawiony na Debugowanie zamiast wydania 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.
Zaloguj się do własnej witryny Azure Portal.
Znajdź wdrożona aplikację w witrynie Azure Portal. Aplikację można znaleźć, przechodząc do strony usługi App Services , a następnie wybierając wystąpienie usługi App Service. Możesz również wyszukać wystąpienie usługi App Service bezpośrednio według nazwy na pasku wyszukiwania u góry. (W tym przykładzie wystąpienie usługi App Service ma nazwę GitHubBrowser123).
Na stronie ustawień wystąpienia usługi App Service wybierz pozycję Konfiguracja po lewej stronie nawigacji, a następnie wybierz kartę Ustawienia ogólne.
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.
Wybierz pozycję Zapisz w górnej części strony, aby utrwały zmiany.
Wystąpienie usługi App Service obsługuje teraz zdalne debugowanie za pośrednictwem programu Visual Studio.
Konfigurowanie ustawień debugowania
Skompiluj aplikację bez błędów. Zatrzymaj aplikację, jeśli jest uruchomiona lokalnie.
Uwaga
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żonym aplikacją.
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 poniżej), 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.
Dołączanie debugera do usługi App Service
W menu głównym w górnej części programu Visual Studio wybierz pozycję Debuguj dołączanie > , aby przetworzyć , 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 utworzonym w poprzednim kroku.
Wybierz listę rozwijaną Typ połączenia i wybierz opcję Microsoft aplikacja systemu Azure Services.
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ć.
Znajdź i wybierz wystąpienie usługi App Service utworzone w poprzednim kroku, a następnie wybierz przycisk OK.
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 aplikacja systemu Azure hostujących wdrożonej aplikacji.w3wp.exe
Wybierz proces, a następnie wybierz pozycję Dołącz w prawym dolnym rogu.W pliku aplikacji języka C#, takim jak
Index.cshtml.cs
, ustaw punkt przerwania, klikając lewy margines. Alternatywnie kliknij prawym przyciskiem myszy i wybierz pozycję Punkt przerwania>Wstaw punkt przerwania.W aplikacji internetowej przejdź do punktu końcowego z punktem przerwania. Jeśli proces jest dołączony, ale nie możesz przejść do punktu przerwania, upewnij się, że profil publikowania w programie Visual Studio jest ustawiony na konfigurację debugowania zamiast konfiguracji wydania.
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 .
Uwaga
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.