VS 2017'de hata ayıklamayı durdurduğunuzda tarayıcının otomatik olarak kapanması nasıl durdurulur


338

Yeni VS 2017 RC'yi deniyorum ve önceki hata ayıklama davranışını nasıl geri alacağını bilen var mı merak ediyorum

VS 2015'te şöyle oldu:

Basın başlat hata ayıklama

  • Web sitesi yeni Chrome sekmesinde açılıyor
  • Basın dur hata ayıklama
  • Web sitesi hala açık ve site hala çalışıyor / etkin

Şimdi 2017'de:

  • Basın başlat hata ayıklama
  • Web sitesi, başka herhangi bir Chrome penceresi / sekmesi ile kenetlenemeyen yeni bir pencerede açılır
  • Basın dur hata ayıklama
  • Web sitesi / Chrome penceresi kapanıyor, Chrome'daki localhost penceresine manuel olarak gitmediğim sürece siteyi kullanmaya devam edemiyorum

2017'de 2015 stiline geri dönmek mümkün mü? Chrome / Web sitesi penceresi diğer Chrome pencereleri / sekmeleriyle kenetlenebilir ve hata ayıklamayı durdurduktan sonra açık kalır mı?

Buna ek olarak, yeni Chrome penceresinin, kullanılabilir bir geçmişe / içeriğe sahip olmadığı için kullanımı sinir bozucu buluyorum. Örneğin, formları veya URL'leri otomatik olarak tamamlayamıyorum, bir formu test etmeye çalışırken çok can sıkıcı

Yanıtlar:


585

Visual Studio 2017 sürüm 15.7 ve üstü ve Visual Studio 2019 işleri yeniden değiştirdi.

Aşağıdaki onay kutularını devre dışı bırakmak, tarayıcıyı açık tutmanıza (hata ayıklamayı durdurduktan sonra kapanmaz) izin verir ve başka bir sekme açar (başka bir pencere yerine):

resim açıklamasını buraya girin

resim açıklamasını buraya girin

Araçlar> Seçenekler> Hata ayıklama> Genel

  • "ASP.NET (Chrome, Edge ve IE) için JavaScript hata ayıklamasını etkinleştir" seçeneğini devre dışı bırakın.

Araçlar> Seçenekler> Projeler ve Çözümler> Web Projeleri

  • ( Visual Studio 2017 ) "Tarayıcı penceresi kapatıldığında hata ayıklayıcıyı durdur" seçeneğini devre dışı bırakın.
  • ( Visual Studio 2019 ) "Tarayıcı penceresi kapatıldığında hata ayıklayıcıyı durdur, hata ayıklama durduğunda tarayıcıyı kapat" seçeneğini devre dışı bırakın.

Ayrıca Microsoft Geliştirici Topluluğu'ndaki bu ilgili hata raporuna bakın .
Uwe Keim

112
Kim bu özelliği ekledi ve evet, mükemmel düşündü. Çok rahatsız edici!
Jon

2
Lütfen görüntünün kaldırıldığı zaman vb. İçin bir metin çözümü de sağlayın.
00'da mohas

18
VS 2019 için: herkes son seçeneği arıyorsa (tarayıcı penceresi kapalıyken Hata Ayıklayıcıyı Durdur), onu Araçlar> Seçenekler> Projeler ve Çözümler> Web Projeleri> Hata ayıklayıcıyı durdur, tarayıcı penceresi kapalıyken tarayıcıyı kapat durur . Görüntüye bakın
jag

1
@jag Teşekkürler, talimatlara dahil ettim.
jerone

83

Davranış değişikliğinin nedeni, VS 2017'nin Chrome'da çalışan JavaScript / TypeScript hata ayıklama desteğinden kaynaklanıyor. Duyuruya buradan bakın https://blogs.msdn.microsoft.com/webdev/2016/11/21/client-side-debugging-of-asp-net-projects-in-google-chrome/

Chrome'un hata ayıklayıcı tarafından kapatılmadığı 2015 davranışına geri dönmek için Araçlar -> Seçenekler'deki IE / Chrome komut dosyası hata ayıklayıcısını devre dışı bırakın:

Hata ayıklayıcı seçenekleri


8
"Düzenlemeyi ve Devam Etmeyi Etkinleştir" i devre dışı bırakana kadar bu benim için çalışmadı ( stackoverflow.com/questions/20831676/… ). Bence her iki değişiklik birlikte tam çözüm.
JoaoRibeiro

4
devre dışı Edit and Continue
bırakıldıktan

24

Visual Studio 2019'a güncelleyenler için, bu yapılandırma şimdi Araçlar> Seçenekler ...

Ardından seçenekler iletişim kutusunda (aşağıdaki resme bakın) Projeler ve Çözümler> Web Projesi:
İşaretini kaldırınStop debugger when broswer window is closed, close browser when debugging

resim açıklamasını buraya girin


Yalnızca bu seçeneğin işaretini kaldırmak yeterli değildir. Tarayıcıyı kapattığınızda, hata ayıklayıcı da durur.
FrenkyB

@FrenkyB Tarayıcıyı kapattığımda hata ayıklayıcı vs sonumda durmadığından sadece tüm görsel stüdyo örneklerinizi kapatıp yeniden açmanız gerektiğini tahmin ediyorum.
Jean-Sébastien Gervais

19

Bu cevabı yazıyorum çünkü öncekiler sorunun sadece yarısını kapsıyor.

İstediğiniz ilk şey, bu can sıkıcı 'yeni bir pencere olarak çalışan kromdan kurtulmak ve hata ayıklama durduğunda otomatik olarak kapanmak'

Araçlar → Seçenekler → ASP.NET için JavaScript hata ayıklamasını etkinleştir seçeneğinin işaretini kaldırın

Bunu yaptıktan sonra hata ayıklamaya başlarken krom yeni bir sekme açar, sekmeyi durdurduktan sonra kapatılmaz, ancak yenilenen web sitesi beyaz ekran gösterir

tekrar Araçlar → Seçenekler

Düzenlemeyi ve Devam Etmeyi Etkinleştir'in işaretini kaldırın

Artık eski davranışlarınız geri döndü.

Seçenekler penceresi


3
VS 15.7.0 ile her iki seçenek de gerekli (cevaplanan cevap yeterli olmadan)
Stefan

1
@Stefan doğru; şimdi her iki seçeneğin de devre dışı bırakılması gerekir. Ancak daha önce bir sekme açar ve şimdi seçilen tarayıcının başka bir örneğini açar.
jerone

ama sunucu tarafı kodu düzenlemek ve devam etmek gerekiyor, neden iç içe?
etermal

@ethermal jerone'un yanıtı (Web Projeleri -> Hata Ayıklayıcıyı Denetle seçeneğini işaretlemeyin) Düzenle ve Devam Et'i devre dışı bırakmadan çalışır.
Steve Greene

2

Git Araçlar -> Seçenekler ve "için arama Dur Debugger ". Ardından Projeler ve Çözümler altında Web Projeleri düğümünü seçin. " Tarayıcı penceresi kapatıldığında hata ayıklayıcıyı durdur " seçeneğinin işaretini kaldırın . Bu seçenekten önce @Jerone'un önerisini uygulamanız gerekir .

Not: Bu seçenek VS 15.7 sürümünden sonra kullanılabilir


1

Bunu yapmanın iki yolu vardır:

  1. Ya ctrl + f5 tuşlarına basarak hata ayıklamadan başlat veya
  2. Hata ayıklama ile başlatın (f5 tuşuna basın) ve ardından Hata Ayıklama menüsüne gidin ve "Tümünü Ayır" a basın

Umarım yardımcı olur.


6
Her iki yanıtın da bu korkunç 2017 iş akışı / hata ayıklama sorununu gerçekten ele aldığını düşünmüyorum. Mesele şu ki, 2015'te mevcut bir Chrome örneğine başlayabilir ve VS'de sunucu kodunda hata ayıklayabilirsiniz. Bunu 2017 ile yapmanın makul bir yolu yok. Uygulamanızı her başlattığınızda 'Tümünü Ayır' ve açılan bir Chrome örneğini kapatmanız, vb. MS konusunda çok rahatsız oldu. Umarım mantıklı olan 2015 hata ayıklama iş akışına geri dönmek için daha iyi bir çözüm vardır.
Austin Harris

4
@Austin, bu geri bildirim için teşekkürler. Takıma
ekleyeceğim (

3
@MichaelBraude evet, bu verimlilikte geriye doğru atılmış büyük bir adım.
Spongman

1
Mads'in söylediği gibi, sevmiyorsanız yeni davranışı devre dışı bırakabilirsiniz. Bu geri bildiriminiz için teşekkür ederiz!
Michael Braude

2
evet, ancak bunu yapmak da krom hata ayıklayıcısını devre dışı bırakır.
Spongman
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.