簡體   English   中英

IIS Express在停止Web應用程序后立即關閉運行站點

[英]IIS Express Immediately shutting-down running site after stopping web application

我在第一天使用visual studio 2012時,我想在IDE中停止應用程序,應用程序仍在IIS Express上運行,我可以瀏覽並使用正在運行的應用程序,但現在我不能。 IIS如果我按下停止按鈕,立即關閉應用程序。 因為我記得我沒有對設置做任何改動。 我應該怎么做與第一天一樣的運行。

我最近遇到了類似的情況,當我停止調試后突然我的IIS Express停止了。 這是在我打開“啟用編輯並繼續”后發生的 因此,如果禁用此功能,即使在調試停止后,IIS Express仍會保持運行狀態。

右鍵單擊項目>單擊屬性>選擇左側的“Web”選項卡>取消選中“ Enable Edit and Continue復選框。

在VS2010和VS2012中,創建新的Web應用程序項目時,默認情況下禁用編輯和繼續選項。 在VS2013中,它默認打開。

您可以在Web項目的屬性窗口的Web選項卡上找到此選項。

編輯並繼續選項vs2013

啟用“啟用編輯並繼續”后,VS調試器將在IIS Express中啟動Web應用程序。 當您停止調試時,IIS Express也會關閉。 通過此行為,您將看到IIS Express系統托盤在調試期間顯示並在調試后消失。 當啟用“編輯並繼續”選項時,此行為與VS2012中的行為相同。

如果在開發期間不需要“編輯並繼續”功能 ,並且希望IIS Express在調試會話后保留, 則只需關閉“啟用編輯並繼續”選項即可

如果您想使用“編輯並繼續”或者您正在開發Asp.net 5站點 (ASP.NET 5項目在項目屬性中沒有“編輯並繼續”復選框) 您必須使用“全部檢測”命令停止調試

調試器將從iis進程中分離而不關閉它。

顯然,在您再次開始調試之前,“編輯並繼續”功能將無效。

在此輸入圖像描述

您可以使用“調試”菜單中的“ Detach all菜單項,而不是按(X) STOP按鈕。 主要區別在於stop按鈕將終止當前正在調試的任何進程,而Detach All將斷開調試器與進程的連接,但不會終止它們。

正常的IIS工作進程也將被終止,但由於它曾經作為服務運行,它也會自動重新啟動,因此您可以繼續使用它而無需通過|> Debug|> Start without debugging重新啟動進程|> Start without debugging

參考的屏幕截圖

添加“編輯並繼續”按鈕到調試工具欄。

似乎自Visual Studio 2015 Update 2發布以來,已接受的解決方案不再有效。

到目前為止,我發現的最簡單的解決方案是通過從Debug菜單中選擇“ Start Without Debugging ”來啟動項目。

這可能最好歸類為另一種解決方法,但它適用於我。

我通常首次使用“在瀏覽器中查看”上下文菜單(或CTRL-Shift-W)啟動項目。

從那時起,任何需要調試的東西,我通常會附加到新的現有iisexpress流程。 雖然通過上下文設置鼠標會使其成為非首發,但它幾乎與F5一樣快,具有以下鍵擊:

  • Shift-F6用於構建當前項目或Ctrl-Shift-B構建整個解決方案(僅在您進行了更改時才需要這個,但我認為我應該提及它,因為F5已經這樣做了)。
  • Ctrl-Alt-P打開“附加到進程”對話框

  • 輸入“iis”會讓你進入iisexpress過程

  • 點擊進入,你就被附上了

如果您有多個iisexpress正在運行,則最后一個iisexpress通常會出現在列表的頂部。 另一個選擇是切換 - 選擇並附加到所有這些。

這有很多優點IMO。 首先,它不會終止該過程。 其次,停止調試時,瀏覽器窗口不會關閉。 當我看到開發人員重復7個步驟來重現錯誤時,它會讓我感到震驚,當他需要做的就是在現有的瀏覽器窗口中點擊F5,只需在調試器連接后重新發布。 最后,我必須在連接到nunit時這樣做,這樣我才能獲得更一致的體驗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM