IIS ExpressはWebアプリケーションを停止した後、すぐに実行中のサイトをシャットダウンします


173

IDEでアプリケーションを停止したい最初の日にVisual Studio 2012を使用しています。アプリケーションはまだIIS Expressで実行されており、実行中のアプリケーションを参照して操作できましたが、今はできません。IIS停止ボタンを押すとすぐにアプリケーションをシャットダウンします。覚えているので、設定を変更しませんでした。最初の日と同じように実行するにはどうすればよいですか。


1
「再生」ではなく「ブラウザで表示」を試してください。デフォルトのブラウザを変更しましたか?IEは停止時に自動的にシャットダウンされますが、Chromeはそうではありません。
Emanuele Greco

いいえ、FFを使用していますが、アプリケーションをデバッグする必要がある場合があります。
セイバー

これはIIS Expressに関連するものだと思います。
セイバー

1
停止ボタンをクリックする代わりに、[デバッグ]メニューの[すべてデタッチ]を使用することもできます。
jessehouwing 2013年

1
デバッグ中のプロセスからデバッガを切り離しましたが、進行中のプロセスを強制終了しません。
jessehouwing 2013年

回答:


344

デバッグを停止した直後にIIS Expressが突然停止したとき、私は最近同様の状況に直面しました。これは、「エディットコンティニュを有効にするをオンにした後に発生しました。したがって、これを無効にすると、デバッグが停止した後でもIIS Expressが実行され続けることがわかります。

プロジェクトを右クリックし、[プロパティ]をクリックしEnable Edit and Continueます。左側の[Web]タブを選択し、チェックボックスをオフにします。


3
これで問題が解決したことを確認できました。
Maxime Rouiller 2013年

51
この作品!! プロジェクトを右クリックし、[プロパティ]をクリックします。左側の[Web]タブを選択し、[編集して続行する]チェックボックスをオフにします。
nv.snow 2013年

6
できます。Visual Studio 2013で[ツール]→[オプション]を開き、ツリーから[デバッグ]→[編集して続行]を選択し、[編集して続行できるようにする]チェックボックスをオフにします。
Renzo Ciot 2013

3
この機能について詳しくは、blogs.msdn.com
gor

5
いいえ、これは悪い解決策です-以下の@jessehouwingが投稿した正しい解決策を参照してください。
Josh M.

85

VS2010およびVS2012では、新しいWebアプリケーションプロジェクトを作成するとき、編集および続行オプションはデフォルトで無効になっています。VS2013では、デフォルトでオンになっています。

このオプションは、Webプロジェクトのプロパティウィンドウの[Web]タブにあります。

オプションvs2013を編集して続行

「編集と続行を有効にする」をオンにすると、VSデバッガーはIIS ExpressでWebアプリケーションを起動します。デバッグを停止すると、IIS Expressも閉じられます。この動作により、デバッグ中にIIS Expressのシステムトレイが表示され、デバッグ後に表示されなくなります。この動作は、[編集と続行を有効にする]オプションがオンになっている場合のVS2012と同じです。

開発中に「編集して続行」機能が不要で、デバッグセッション後もIIS Expressを維持したい場合は、「編集して続行できるようにする」オプションをオフにするだけです。

あなたが「編集を続行」を使用する場合、またはあなたがAsp.net 5サイトを開発しているfは(ASP.NET 5つのプロジェクトは、[編集]を持っており、プロジェクトのプロパティのチェックボックスを続行しないでください)あなたは「Detechすべて」コマンドを使用する必要がありますデバッグを停止します。

デバッガーはiisプロセスを閉じずに切り離します。

明らかにデバッグを再開するまで、「編集して続行」機能は機能しません。

ここに画像の説明を入力してください


写真は千の言葉に値する:D
giammin

64

(X) STOPボタンを押す代わりに、[ Detach allデバッグ]メニューのメニュー項目を使用できます。主な違いは、停止ボタンは現在デバッグ中のすべてのプロセスを終了するのに対し、すべて分離はデバッガをプロセスから切断しますが、プロセスを終了しません。

通常のIISワーカープロセスも終了しますが、以前はサービスとして実行されていたため、自動的に再起動され、|> Debugまたはを介してプロセスを再起動しなくても引き続き使用できます|> Start without debugging

参照用のスクリーンショット

デバッグツールバーに[編集して続行]ボタンを追加します。


3
これは実際には実際の答えに近いものです。「編集して続行」オプションは機能です。デバッグトレーサーをリスニングプロセスにアタッチおよびデタッチすることは、ここでの議論の基本概念であり、[停止]をクリックするとそのリスニングプロセスが終了するか、単にそこからデタッチします。もちろん、再アタッチすることもできます。
Brett Caswell 2014

@jcmcbeth IIS Expressで実際に機能します。機能していないことはおそらくわかりませんでした... IIS Expressプロセスは、それ自体が独自のプロセスです。VSデバッガーがプロセスを起動し、それにアタッチしています。しかし、そのプロセスは、アプリケーションまたはWebサーバーがprocで実行するためにビジター/ユーザーエージェント/クライアントを必要とするよりも、アタッチされたデバッガーの実行に依存していません
Brett Caswell

1
@jcmcbeth、これは、機能のサポートと設定について話しているときに、Q&Aサイトで奇妙なことです。これはそれを取るか、そのままにするかではありません。IIS Express では動作しないようです。します。
Brett Caswell 2014年

1
「エディットコンティニュを有効にする」チェックボックスはVS 2015 RC for ASP.NET 5プロジェクトには存在しないので、IIS Expressをこれらと一緒に使用する場合に使用できます。
Tomek、2015年

7
これは、VS 2015 Update 2がIISの動作をどのように変更して、プロジェクトのWebタブから編集と続行を削除したかに対する答えです。
Robharrisaz

32

Visual Studio 2015 Update 2のリリース以降、承認されたソリューションは機能しなくなったようです。

これまでに見つけた最も簡単な解決策は、[ デバッグ ]メニューから[ デバッグなしで開始]を選択してプロジェクトを開始することです。


1
VS2015についてお話しているようですね。
Chad Carisch 2016年

くそー、私はちょうどこの問題に遭遇し、これについて質問投稿しました。これを解決するための既知の回避策はありますか-ショートカットの代わりに[デバッグせずに開始]に再バインドして[停止]の代わりに[デタッチ]しますか?
nikib3ro 2016年

1
彼らはあなたが使用できる別のトリックは、デバッグせずにサイトを開始するヒットCTRL + F5にある平均時間では、次のアップデートでそれを固定していると言う:connect.microsoft.com/VisualStudio/feedback/details/2562576/...を
マットマンサー

4

これはおそらく別の回避策として最もよく分類されますが、私にとってはうまくいきます。

私は通常、「ブラウザーで表示」コンテキストメニュー(またはCTRL-Shift-W)を使用して初めてプロジェクトを開始します。

それ以来、デバッグが必要なものは何でも、私は通常、新しい既存のiisexpressプロセスにアタッチします。コンテキストメニューを介してマウスを使用すると、これは初心者にはなりませんが、次のキーストロークを使用すると、F5とほぼ同じくらい高速です。

  • Shift-F6で現在のプロジェクトをビルドするか、Ctrl-Shift-Bでソリューション全体をビルドします(これは、変更を加えた場合にのみ必要ですが、F5ですでに行われているので、言及する必要があります)。
  • Ctrl-Alt-Pは、プロセスへのアタッチダイアログを開きます

  • 「iis」と入力すると、iisexpressプロセスに移動します

  • Enterキーを押すと、接続されます

複数のiisexpressを実行している場合、通常、最後に開始したiisexpressがリストの一番上に表示されます。別のオプションは、シフト選択してそれらすべてにアタッチすることです。

これにはIMOの多くの利点があります。何よりもまず、プロセスを終了しません。次に、デバッグを停止してもブラウザウィンドウが閉じません。開発者がバグを再現するために7つのステップを繰り返すのを見たとき、それは私を解き放ちます。デバッガーが接続されたら、既存のブラウザーウィンドウでF5を押して再投稿するだけです。最後に、nunitに接続するときはすでにこれを行わなければならないので、より一貫したエクスペリエンスが得られます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.