[ASP.NET Core] 使用 Visual Studio Code 來附加處理程序 Debug

接續上一篇 [ASP.NET Core] 使用 dotnet watch 自動編譯修改過的 C#代碼並執行程式

已經能邊改代碼儲存後,就能看到最新的程式結果,

不過改完代碼後,也不確定是否就是按照想像中的程式那樣跑,

就需要 Debug 幫我們釐清程式執行的內容了。

 

在上一篇 [ASP.NET Core] 使用 Visual Studio Code 來 Debug 吧,

學會怎麼在網站程式尚未執行之前,使用 VS Code 直接啟動網站程式,並附加處理程序,

但如果是用 dotnet run 或 dotnet watch run,網站已經在執行後,

就得使用附加處理程序的方式來 Debug,就跟使用 Visual Studio IDE 附加處理程序一樣。


launch.json 的 configurations 設定中有一段

        {
            "name": ".NET Core Attach",
            "type": "coreclr",
            "request": "attach",
            "processId": "${command:pickProcess}"
        }

這樣就能在 VS Code 的 Debug 畫面中選擇 .NET Core Attach,按下綠色箭頭(或者 F5 熱鍵)就能選擇要附加的處理程序,

這裡可以看執行的 dll 是哪一個,例如 mywebapi.dll 是你編譯後的 dll,那網站程式就是跑這個處理程序,

附加後能看到紅色的中斷點有是實心的,表示有載入 Symbol,同時上面也看得到偵錯功能按鈕列,

直接改程式儲存後,dotnet watch 會自動編譯執行,在附加偵錯即可(希望未來能做到修改完儲存自動附加偵錯),