共用方式為


C# 偵錯組態的項目設定(.NET Core、.NET 5+和 ASP.NET Core)

您可以在專案屬性頁的 [偵錯] 索引標籤[建置] 索引標籤 變更 C# 專案偵錯設定。

若要開啟屬性頁,請在 [方案總管] 中選取項目,然後選取 [屬性] 圖示,或以滑鼠右鍵按兩下專案,然後選取 [屬性]

如需詳細資訊,請參閱 偵錯和發布組態

重要

這些設定不適用於 .NET Framework 或 UWP 應用程式。 若要設定 .NET Framework 的偵錯設定,請參閱C# 偵錯組態的項目設定。

偵錯索引標籤

從 Visual Studio 2022 開始,請在 [偵錯] 標籤中選擇 [開啟偵錯啟動設定檔 UI] 以開啟啟動設定檔 UI 並變更偵錯設定。

啟動設定檔 (.NET Core, .NET 5+)

設定 描述
指令行參數 指定要偵錯之應用程式的命令行自變數。 命令名稱是 Start external program中指定的應用程式名稱。
工作目錄 指定正在偵錯之應用程式的工作目錄。 在 C# 中,工作目錄預設會 \bin\debug
使用遠端電腦 針對遠端偵錯,選取此選項並輸入遠端偵錯目標的名稱,或 Msvsmon 伺服器名稱
遠端電腦上的應用程式位置是由 [組建] 索引標籤上的 [輸出路徑] 屬性所指定。位置必須是遠端電腦上的可共享目錄。
環境變數 在執行應用程式程式之前設定環境變數。 如需 ASP.NET Core,請參閱 環境
啟用非受控程式碼偵錯 偵錯從受控應用程式呼叫的原生(非受控)Win32 程式碼。
啟用 SQL Server 偵錯 偵錯 SQL Server 資料庫物件。
啟用 WebView2 偵錯 使用 Microsoft Edge (Chromium) 調試程式對 JavaScript 進行偵錯。

啟動設定檔 (ASP.NET 核心)

除了 .NET 5+ 的屬性之外,ASP.NET Core 啟動配置檔也包含不同 ASP.NET Core 配置檔的數個額外屬性。 這些設定為專案的 launchSettings.json 檔案提供簡單的UI。 如需此檔案的詳細資訊,請參閱 在 ASP.NET Core 中使用多個環境的開發與 launchSettings.json 一節。

啟動配置檔UI中提供的設定包括下列各項。

設定 描述
啟動瀏覽器 選取是否要在開始偵錯時啟動預設瀏覽器,並使用您在 Url 設定中設定的 URL。
URL 指定 .NET 或 .NET Core 的主機 URL 位置。 以專案命名的配置檔(即 launchSettings.json 中的 commandName 屬性被命名為 Project),Kestrel 伺服器將會接聽指定的埠。 針對 IIS 配置檔,這通常與 應用程式 URL相同。 如需詳細資訊,請參閱 設定專案下的 IIS 啟動設定檔一節。
應用程式 URL 指定應用程式 URL。。 針對以專案命名的設定檔,此屬性會指定 Kestrel 伺服器 URL,通常是 https://localhost:5001http://localhost:5000

Visual Studio 預設會提供 IIS Express 配置檔,而且您可以建立其他配置檔,例如 IIS 配置檔。 這些設定也對應至 launchSettings.json中的設定。 這兩種配置檔類型提供數個設定,例如代管模型。

設定 描述
託管模型 指定 [處理中] (預設值) 或 [行程外]。 如需詳細資訊,請參閱 ASP.NET Core 檔中的 裝載模型
應用程式 SSL URL 針對 IIS Express,應用程式 SSL URL 通常是 http://localhost:44334.

建置標籤

下表顯示適用於偵錯的組建設定。 如需組建設定的完整說明,請參閱 建置頁面、專案設計工具

設定 描述
一般>條件式編譯符號 如果選取 ,請定義 DEBUG 和 TRACE 常數。

這些常數會啟用 Debug 類別的條件式編譯,Trace 類別。 定義這些常數之後,Debug 和 Trace 類別方法會產生輸出至 [輸出] 視窗,。 如果沒有這些常數,則不會編譯 Debug 和 Trace 類別方法,而且不會產生任何輸出。

通常,DEBUG 會在 Debug 版本的組建中定義,而在 Release 版本中未定義。 TRACE 被定義在除錯和釋出版本中。
一般>優化程式代碼 除非錯誤只出現在優化代碼中,否則請將此設定在偵錯版本中保持未選取狀態。 優化程式代碼較難偵錯,因為指令不會直接對應至原始程式碼中的語句。
偵錯符號 指定編譯程式所產生的偵錯資訊類型。 請參閱 偵錯符號。 如需如何設定應用程式偵錯效能的資訊,請參閱 讓映射更容易偵錯
輸出>基底輸出路徑 指定中繼輸出的基底資料夾。 輸出通常會放到 bin\Debug 目錄用於 Debug 構建。
輸出>基底中繼輸出路徑 指定中繼輸出的基底資料夾。 輸出通常會送到 調試版本的 obj\Debug

偵錯符號

您可以選擇下列偵錯符號選項。

  • 沒有符號被發出

    指定不會產生偵錯資訊。

  • PDB 檔案,目前的平臺

    產生 PDB 檔案是平臺特定的符號檔,可為其他工具提供資訊,特別是調試工具,關於主要可執行檔中的內容及其產生方式。

  • PDB 檔案、可攜式

    產生 。PDB 檔案是非平台專屬的可攜式符號檔,可提供其他工具,特別是調試程式、主要可執行檔中內容及其產生方式的相關信息。 如需詳細資訊,請參閱 可攜式 PDB

  • 內嵌在 DLL/EXE 中,跨平臺可移植

    將可攜式符號資訊內嵌至元件。 不會產生外部 PDB 檔案。

如需詳細資訊,請參閱 /debug (C# 編譯程式選項)

另請參閱