一、IIS6下附加到進程調試,此方法在VS重新編譯後,需要重新啓動網站
1、發佈網站到一個目錄下,然後建立一個netcore的網站,修改webconfig.xml文件
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments="E:\MyTask\TEST\netcore\Test\bin\Debug\netcoreapp2.2\netcoreapp2.2\Test.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="InProcess" />
</system.webServer>
</location>
</configuration>
其實就是修改dotnet啓動的參數到VS生成的bin目錄下的debug,之後打開網站,會用到bin目錄下的debug信息。
2、停止和啓動iis服務中的網站,參考https://blog.csdn.net/hejisan/article/details/81750808
C:\Windows\System32\inetsrv\appcmd.exe stop site "網站名"
C:\Windows\System32\inetsrv\appcmd.exe start site "網站名"
重啓可以做成一個批處理文件,先停止,再啓動。
二、直接使用dotnet,使用命令行
1、發佈網站到一個目錄下,然後在命令行cd到該目錄
進入該目錄,在該目錄下執行如下命令
dotnet "VS2017項目的debug目錄\FM.OCM.Web.dll"
2、在VS2017中附加到進程,選擇dotnet.exe
3、VS中打斷點,在瀏覽器中輸入網址,然後就會進入到斷點內
4、使用CTRL+C關閉服務,再在VS中編譯,之後再啓動
說明:net framework在iis中附加到進程,編譯->附加w3wp.exe->調試,core中,編譯->啓動服務->附加(dotnet.exe)->調試->停止服務->編譯->啓動服務
使用方法二還有一個好處就是,在控制檯可以看到輸出日誌,比較方便看日誌。