VS 2017でデバッグを停止したときにブラウザーの終了を自動的に停止する方法


336

私は新しいVS 2017 RCを試してみて、以前のデバッグ動作を元に戻す方法を誰かが知っているかどうか疑問に思っています

VS 2015では、次のようになりました。

プレス開始デバッグ

  • 新しいChromeタブでウェブサイトが開きます
  • デバッグを停止します
  • ウェブサイトはまだ開いており、サイトはまだ実行中/アクティブです

現在2017年:

  • プレス開始デバッグ
  • 他のChromeウィンドウやタブとドッキングできない新しいウィンドウでウェブサイトが開く
  • デバッグを停止します
  • ウェブサイト/ Chromeウィンドウが閉じ、手動でChromeのlocalhostウィンドウに移動しない限り、サイトを使用し続けることができません

2017年に2015スタイルに戻すことは可能ですか?Chrome /ウェブサイトウィンドウは他のChromeウィンドウ/タブとドッキングでき、デバッグを停止した後も開いたままですか?

さらに、利用できる履歴やコンテンツがないように見えるので、新しいChromeウィンドウを使用するのは面倒です。たとえば、フォームやURLをオートコンプリートすることはできません。これは、フォームをテストしようとするときに非常に迷惑です。

回答:


582

Visual Studio 2017バージョン15.7以降とVisual Studio 2019では、状況が再び変更されました。

次のチェックボックスを無効にすると、ブラウザーを開いたままにして(デバッグを停止しても閉じない)、別のウィンドウではなく別のタブを開くことができます。

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

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

ツール>オプション>デバッグ>一般

  • 「ASP.NET(Chrome、Edge、IE)のJavaScriptデバッグを有効にする」を無効にします。

ツール>オプション>プロジェクトとソリューション> Webプロジェクト

  • Visual Studio 2017)「ブラウザーウィンドウが閉じたときにデバッガーを停止する」を無効にします。
  • Visual Studio 2019)「ブラウザーウィンドウが閉じたらデバッガーを停止し、デバッグが停止したらブラウザーを閉じる」を無効にします。

マイクロソフト開発者コミュニティのこの関連バグレポートも参照してください。
Uwe Keim、

112
一体誰がこの機能を追加し、そう、完璧だと思いましたか。それはとても迷惑です!
ジョン・

2
画像が削除されたときなどのテキストソリューションも提供してください
mohas

18
VS 2019の場合:最後のオプション(ブラウザーウィンドウが閉じたときにデバッガーを停止する)を探している場合、ツール>オプション>プロジェクトとソリューション> Webプロジェクト>ブラウザーウィンドウが閉じたときにデバッガーを停止し、デバッグ時にブラウザーを閉じる停止します。画像を見る
jag

1
@jagありがとう、私はそれを説明に含めました。
jerone、

83

動作の変更の理由は、Chromeで実行されているJavaScript / TypeScriptのデバッグに対するVS 2017のサポートによるものです。こちらの発表をご覧くださいhttps://blogs.msdn.microsoft.com/webdev/2016/11/21/client-side-debugging-of-asp-net-projects-in-google-chrome/

デバッガーによってChromeが閉じられない2015の動作に戻すには、[ツール]-> [オプション]でIE / Chromeスクリプトデバッガーを無効にします。

デバッガオプション


8
「エディットコンティニューを有効にする」(stackoverflow.com/questions/20831676/…)を無効にするまで、これは機能しませんでした。両方の変更が一緒になって完全な解決策になると思います。
ジョアンリベイロ2017年

4
無効にした後でもvs2017では機能しませんEdit and Continue
ahmad molaie 2017

24

Visual Studio 2019に更新した方のために、その構成は[ツール]> [オプション]にあります。

次に、オプションダイアログ(下の画像を参照)で、[プロジェクトとソリューション]> [Webプロジェクト]を
オフにします。Stop debugger when broswer window is closed, close browser when debugging

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


このオプションのみをオフにするだけでは不十分です。ブラウザーを閉じると、デバッガーも停止します。
FrenkyB 2019年

@FrenkyBブラウザーを閉じてもvsデバッガーが私の側で止まらないので、すべてのビジュアルスタジオインスタンスを閉じて再度開く必要があると思います。
ジャン=セバスチャン・ジェルヴェ

19

以前の問題は問題の半分しかカバーしていないと思うので、私はこの答えを書いています。

あなたが望む最初のことは、この厄介な「新しいウィンドウとしてクロムを実行し、デバッグを停止したときに自動的に閉じる」ことを取り除くことです

ツール→オプション→ASP.NETのJavaScriptデバッグを有効にするのチェックを外します

これを行った後、Chromeのデバッグを開始すると新しいタブが開きます。停止後、タブは閉じませんが、Webサイトを更新すると白い画面が表示されます

再度[ツール]→[オプション

[ 編集して続行する]をオフにします

今からあなたはあなたの古い振る舞いを取り戻しました。

オプションウィンドウ


3
VS 15.7.0では両方のオプションが必要です(適切な回答が十分になる前に)
Stefan

1
@Stefanは正しいです。ここで両方のオプションを無効にする必要があります。しかし、以前はタブを開き、現在は選択したブラウザの別のインスタンスを開きます。
jerone

しかし、サーバー側のコードを編集して続行する必要があります。なぜそれらが絡み合っているのですか?
-ethermal

@ethermal jeroneの回答(Webプロジェクト->デバッガーの停止をオフ)は、編集と続行を無効にすることなく機能します。
スティーブグリーン

2

[ ツール] -> [ オプション]に移動し、「Stop Debugger」を検索します。次に、[プロジェクトとソリューション]で[Webプロジェクト]ノードを選択します。[ ブラウザウィンドウを閉じたときにデバッガを停止する]をオフにします。このオプションの前に、@ jeroneの提案を適用する必要があります。

PS:このオプションはVSバージョン15.7以降で使用できます


1

これを行うには2つの方法があります。

  1. Ctrl + F5を押して、デバッグせずに起動するか、
  2. デバッグして起動し(f5を押す)、[デバッグ]メニューに移動して[すべて切り離す]を押します。

お役に立てば幸いです。


6
私はどちらの答えもこのひどい2017年のワークフロー/デバッグの問題に本当に対処しているとは思いません。ポイントは、2015年に既存のChromeインスタンスを起動しても、VSでサーバーコードをデバッグできることです。2017年にこれを行う合理的な方法はないようです。アプリを起動するたびに「すべてデタッチ」し、ポップアップするChromeの追加インスタンスを閉じる必要はありません。マイケルB.この問題についてMSに非常に悩まされました。意味のある2015年のデバッグワークフローに戻るためのより良いソリューションがあることを願っています。
オースティンハリス

4
@Austin、このフィードバックをありがとう。私はそれをチームに渡します(私はMicrosoftのVisual Studioで作業しています)
Michael Braude 2017年

3
@MichaelBraudeええ、これは生産性を後退させる大きな一歩です。
Spongman 2017年

1
Madsが言うように、気に入らない場合は新しい動作を無効にできます。このフィードバックをありがとう!
Michael Braude 2017年

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