調試.NET CORE代碼

前言

  core也用了很長一段時間了,發現很多小夥伴不知道如何調試core的代碼。

  可想而知,以前使用mvc的時候,不需要發佈代碼,直接iis地址指向項目源碼,然後附加到進程w3wp.exe就可以調試了。

  在core的項目裏面已經不能這樣玩了...

正文

  1. 安裝Open Command Line

            

 

  

  2. 配置

           我們先建一個core網站,在解決方案上面右鍵,最下面會出現Open Command Lint選項

            

          先進Default,會打開dos面板,路徑是當前項目路徑

         輸入:dotnet run 啓動項目

         

 

        在瀏覽器中打開https://localhost:5001就可以瀏覽到項目。

        然後在VS中附加到進程,選擇dotnet.exe進程(選擇查看所有用戶進程)

        這樣斷點就進來了。

        如果修改了代碼,需要在使用ctrl+c終止,然後dotnet run重新發布,就可以了。

        

       

        這樣一來相當於以前把 IIS 直接定位在網站項目路徑下的做法了, 足夠方便。

        後來發現還有更方便的,連 dotnet run都不需要敲了。

        選擇Settings,將 Command arguments 這一欄改爲: /k dotnet run

        設置好了, 下一次點擊 「Open Comand Line」->「Default」, 直接就執行 dotnet run 了。

        PS:大佬指點,命令可以改成 dotnet watch run,這樣代碼改動就不需要重新執行命令了,

       

       

後續整理

   因爲本篇文章有很多同學有質疑,在這裏進行後續的整理

     1.多個項目同時開發的時候,出現多個dotnet.exe進程,無法判斷當前項目屬於哪個進程

     2.會莫名其妙出現很多個dotnet.exe進程

      解決方案:

      在項目目錄下新建文件 run.cmd

      複製代碼: 

  @echo off
  echo ASPNETCORE_ENVIRONMENT=Development
  dotnet build
  start "xxx" dotnet run
  exit

       然後在cmd上面右鍵,Execut File打開

       重新附加到解決方案就能顯示該項目的進程名稱

       3.如需要提升編譯速度,可直接使用路徑替換dotnet run,速度將會大大提升

       dotnet bin\Debug\netcoreapp2.1\VueCore.Admin.dll  替換 dotnet run