咱們在作網站開發的時候,一般是寫好了一個功能就要進行測試,Visual Studio上點「Start Debugging」(快捷鍵是F5),這是調試模式,也有直接運行模式,「Start Without Debugging」(快捷鍵是Ctrl+F5),網站啓動,而且默認會打開一個瀏覽器窗口讓你看到結果,假如這個時候你發現點問題,須要調整代碼……html
若是是cshtml、aspx、ashx或asmx這類非C#文件(*.cs),無論是調試模式仍是非調試模式,直接點保存,就生效了,網站一刷新頁面,第一次訪問到它們,它們就會自動被編譯,從新生成可執行代碼。瀏覽器
若是你嘗試在調試中修改cs文件,會獲得這麼一個錯誤提示:工具
你得先把程序暫停了,才能對它進行修改,暫停的辦法有兩種,一種是斷點,程序跑到斷點處就自動暫停了,另外一種是直接點「Break All」(快捷鍵是Ctrl+Alt+Break),暫停了程序,就能夠對cs文件進行修改了,修改好以後,點一下「Continue」(快捷鍵F5),就生效了,神奇的是:你甚至不須要點保存。測試
固然了,這還得有個前提,就是你的Visual Studio開啓了這個選項:網站
若是沒開啓這個選項的話,你在調試中能夠繼續編輯C#代碼,能夠保存,但不會生效。ui
你能夠直接修改cs文件,沒有任何問題,保存,看看是否起做用?——答案是否。由於承載着你的程序的容器——IIS Express並不知道你修改了源代碼,你須要從新編譯一下,點一下「Build Solution」(快捷鍵F7),而後就生效了。固然對非ASP.NET程序來講,這招行不通,由於程序運行時,EXE文件是寫保護的,這跟ASP.NET程序的運行原理不同。spa
但願經過這幾種方式,可以提升你們的網站開發效率。命令行
對於.NET Core程序來講,還有另一種方法,就是使用「Microsoft.DotNet.Watcher.Tools」工具。在項目的csproj中加入這麼一行:調試
<DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="2.0.0" />
接下來在項目的目錄下(也就是csproj所在的目錄下),執行一次dotnet restore(這個不用每次都執行),而後執行dotnet watch run。程序就跑起來了。rest
接下來你對C#代碼的修改都會被Watcher觀察到,並自動編譯你的代碼和重啓你的程序,這個過程不須要你額外本身去Build和Run,固然你程序若是有錯,它也會顯示出來Build失敗,失敗的話不會重啓程序,繼續跑着舊版。
因爲須要打開命令行界面,因此總感受有點麻煩,速度嘛,相比前面提起的手動Build Solution,好像也快不去哪裏。用不用本身看。