分享方式:


在 Azure App Service 上對 ASP.NET Core 進行遠端偵錯 (Windows)

本文說明如何將 Visual Studio 偵錯工具附加至在 Azure App Service 上執行的 ASP.NET Core 應用程式。 下列步驟可讓您偵錯應用程式,就像應用程式在本機執行一樣。

必要條件

  • 已安裝 Visual Studio 2022,以及 ASP.NET 與 Web 開發與 Azure 開發工作負載。

  • 您必須先從 Visual Studio 將 ASP.NET Core 應用程式部署到 Azure App Service (Windows),而且應用程式必須正在執行。

    如需包含 App Service 部署的實作訓練,請參閱 在 Azure App Service 上對 ASP.NET Core 進行遠端偵錯

  • 在發佈之前,必須將 Visual Studio 中的發佈設定檔設定為「偵錯」而不是「發佈」。

啟用遠端偵錯

您必須先在 App Service 上啟用遠端偵錯功能,才能使用 Visual Studio 對此問題進行偵錯。 此設定可讓 Visual Studio 偵錯工具連線至主要應用程式服務 Web 裝載處理序。

  1. 登入您自己的 Azure 入口網站

    在 Azure 入口網站中找到已部署的應用程式。 您可以瀏覽至 App Services 頁面,然後選取 [App Service 執行個體] 來尋找您的應用程式。 您也可以在頂端的搜尋列中,直接依名稱搜尋 App Service 執行個體。 (在此範例中,App Service 執行個體名為 GitHubBrowser123。)

    Azure 搜尋的螢幕擷取畫面。

  2. 在 App Service 執行個體 [設定] 頁面上,選取左側導覽面板的 [設定],然後切換至 [一般設定] 索引標籤。

  3. 在頁面底部,務必將 [遠端偵錯] 功能設定為 [開啟],然後選取 [Visual Studio 2022] 當作 [遠端 Visual Studio 版本]

    Azure 遠端偵錯設定的螢幕擷取畫面。

  4. 選取頁面頂端的 [儲存] 來保存您的變更。

您的 App Service 執行個體現在支援透過 Visual Studio 進行遠端偵錯。

設定偵錯設定

  1. 建置應用程式時不會發生錯誤。 如果應用程式正在本機執行,請停止您的應用程式。

    注意

    請確定本機程式碼的狀態符合部署至 Azure 的內容。 這可確保本機符號檔案和原始程式碼會與已部署的應用程式對齊。

  2. 從頂端 Visual Studio 功能表選取 [偵錯] > [選項]。 確定未核取 [啟用 Just My code] (如下所示),然後選取 [確定]。

    變更此設定可讓 Visual Studio 使用本機 [bin] 資料夾中的必要符號檔,對部署至 Azure 的最佳化程式碼進行偵錯。 偵錯工具使用符號檔作為編譯、執行程式碼與 Visual Studio 中的原始程式碼之間的橋接器。 遠端偵錯需要相符的符號檔。

    Visual Studio 偵錯設定的螢幕擷取畫面。

將偵錯工具附加至 App Service

  1. 從 Visual Studio 頂端的主要功能表中,選取 [偵錯]>[附加到程序],以開啟對應的對話方塊。 使用此視窗,您可以連線並附加至不同的目標。 在此案例中,您將連線到在上一個步驟中建立的 App Service 執行個體。

  2. 選取 [連線類型] 下拉式清單,然後選擇 Microsoft Azure App Service 選項。

  3. 選取 [連線目標] 欄位旁的 [尋找...] 開啟對話方塊,並瀏覽 Azure 訂用帳戶和應用程式服務。

    如果您尚未登入 Azure 訂用帳戶,請選取 [尋找…],即可登入

  4. 找出並選取您在上一個步驟中建立的 App Service 執行個體,然後選擇 [確定]

  5. w3wp.exe 程序應該會出現在要連線的可用程序清單中。 w3wp.exe是裝載已部署應用程式之 Azure 應用程式服務的主要程序。 選取 w3wp.exe 程序,然後選擇右下角的 [附加]

    連結到處理序功能的螢幕擷取畫面。

  6. 在 C# 應用程式檔案 (例如 Index.cshtml.cs) 中,按一下左邊界來設定中斷點。 或者,以滑鼠右鍵按一下並選擇 [中斷點]>[插入中斷點]

  7. 在 Web 應用程式中,使用中斷點瀏覽至端點。 如果您已附加到該程序但無法觸發中斷點,請確認 Visual Studio 中的發佈設定檔設定為「偵錯」組態,而不是「發佈」組態。

  8. 選擇性:確認 Visual Studio 已載入偵錯工作階段的符號檔。 瀏覽至 [偵錯] > [Windows] > [模組] 以開啟模組視窗。 此視窗表示您稍早所做的 Just my code 設定變更後已成功載入符號檔案。

    符號檔視窗的螢幕擷取畫面。

注意

如需應用程式服務的後續偵錯,請選取 [偵錯]>[重新附加至 w3wp.exe],或使用 Shift+Alt+P 熱鍵。