共用方式為


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。 如需此檔案的詳細資訊,請參閱 在 Core中使用多個 ASP.NET 環境中的開發與 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 版本中被定義,而在發行版本中則未定義。 TRACE 定義於偵錯和發行版本中。
一般>優化程式代碼 除非錯誤只出現在優化編譯碼中,否則在偵錯版本中保持此設定取消選取。 優化程式代碼較難偵錯,因為指令不會直接對應至原始程式碼中的語句。
偵錯符號 指定編譯程式所產生的偵錯資訊類型。 請參閱 偵錯符號。 如需如何設定應用程式偵錯效能的資訊,請參閱 讓映射更容易偵錯
輸出>基底輸出路徑 指定中繼輸出的基底資料夾。 輸出通常會到 bin\Debug 目錄,用於偵錯版本的建置。
輸出>基底中繼輸出路徑 指定中繼輸出的基底資料夾。 輸出通常會 偵錯組建的 obj\Debug

偵錯符號

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

  • 沒有發出符號

    指定不會產生偵錯資訊。

  • PDB 檔案,目前的平臺

    產生 .PDB 檔案,這是與平臺相關的符號檔,可提供其他工具,特別是偵錯工具,關於主要可執行檔內的內容及其生成方式的資訊。

  • PDB 檔案、便攜式

    產生.PDB檔案,這是一種非平台專屬的可攜式符號檔,可提供其他工具,特別是除錯器,了解主要可執行檔的內容及其產生方式的相關資訊。 如需詳細資訊,請參閱 可攜式 PDB

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

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

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

另請參閱