Hata ayıklamaya başlarken Visual Studio'nun yeni bir tarayıcı penceresi başlatmasını engelliyor musunuz?


340

Hata ayıkladığım web sitesiyle zaten açık bir pencerem var. Her hata ayıklamam gerektiğinde benim için başka bir tane başlatmak için VS'ye ihtiyacım yok.

Bu davranışı durdurmanın bir yolu var mı?


Sekmeli gözatma etkin mi? .. Ve IE mi kullanıyorsunuz?
Quintin Robinson

Yanıtlar:


415

(Başlangıç projenin özelliklerini açın Projesi → {ProjeAdı} Özellikler '... ana menüden veya sağ Projenizi tıklayın Solution Explorer ve seçim Özellikler' gezinme, sonra) Web sekmesi altında Başlat Eylem seçim bir sayfa açmak değil Do . Harici bir uygulamadan bir istek bekleyin .

Çalışan uygulamaya erişmek için herhangi bir tarayıcıyı (veya Fiddler'ı) kullanmaya devam edebilirsiniz, ancak tarayıcı penceresini otomatik olarak açmaz, sadece arka planda başlar ve herhangi bir istek bekler.


Bu gerçekten iyi bir çözüm gibi görünüyor, ancak Slace'ınki gibi, kesme noktalarında uygulamayı durdurmuyor, hiçbir sembol yüklü değil. Yine de teşekkürler.
sker

9
Öyle. Her zaman hata ayıklamak için kullanıyorum. Yanlış yapılandırmaya sahip olmalısınız. Web.config dosyasında hata ayıklamanın etkin olup olmadığını ve bir Hata Ayıklama derlemesi çalıştırdığınızı bir kez daha kontrol edin.
Pawel Krakowiak

1
@mjohnsonengr Bu yerel bir kullanıcı ayarı olduğunu yemin ederim ... Belki de .csproj.user dosyası iade (değil gerekir).
Pawel Krakowiak

1
Yani [yerel bir ayardır]. Daha önce bu alandaki tüm proje ayarlarının csproj ekibinde saklandığını varsaymıştım. Daha önce tarayıcının açacağı URL'yi "Proje URL'sini" değiştirerek değiştirmeyi denedim ve .csproj'da değiştiğini gördüm. Daha yakından incelendiğinde, yalnızca bu alanı kontrol eden bir "Sunucu ayarlarını tüm kullanıcılara uygula" onay işareti olduğunu görüyorum. Benim hatam.
mjohnsonengr

4
Mac üzerinde Visual Studio için, karşılaştırılabilir ayarlar "Proje> Seçenekler> Çalıştır> Varsayılan> ASP.NET Core" altındadır. "Uygulama başladığında URL'yi web tarayıcısında aç" seçeneğinin işaretini kaldırın.
IronRod

135

VS 15.7.1 için ToolsOptionsProjects and SolutionsWeb Projects→ işaretini kaldırın Stop debugger when browser window is closed.


6
VS 15, Visual Studio 2017 , BTW'dir.
Uwe Keim

2
Önerilen değişiklik, sorunun ne ile ilgili olduğunu yapmaz.
Anatolyevich

1
VS2019'da iyi çalışıyor (16.4.4)
Rory McCrossan

75

Bir .NET Core Web Api projesi için cevap güncellendi ...

Projenize sağ tıklayın, "Özellikler" i seçin, "Hata ayıkla" ya gidin ve "Tarayıcıyı başlat" onay kutusunun işaretini kaldırın (varsayılan olarak etkindir).

resim açıklamasını buraya girin


1
@Grey Bu seçenek "Tarayıcıyı Başlat" seçeneği nerede bulunur?
Ayush Singhania

Cevabı güncelledim: Seçeneğe ulaşmak için projenizin özelliklerine gitmelisiniz.
CennoxX

44

Bir ASP.Net 5 projesinde bu artık her başlatma profili için ayarlanabilir.

Başlangıç ​​Projesi Özellikleri klasörü altındaki launchsettings.json dosyasını açın ve "launchBrowser": falseaşağıdaki gibi yapılandırdığınız profile ekleyin :

"profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": false,
      "environmentVariables": {
        "Hosting:Environment": "Development"
      }
    }
}

13

Bu geçici çözüm benim için VS 2019 için çalışıyor

Araçlar => Seçenekler

Sonra yazın Projects and solutions arama kutusuna yazın.

Öğesini seçin Web Projects.

Ardından aşağıdaki seçeneğin seçimini kaldırın.

Tarayıcı penceresi kapalıyken hata ayıklayıcıyı durdurun, hata ayıklama durduğunda tarayıcıyı kapatın.

Bu benim için çalışıyor. Umarım bu yardımcı olur.


1
Bu ipucu için teşekkür ederim.
Win Man

Hata ayıklamaya her başladığımda hala yeni bir sekme açar.
mimic

12

Düğmesine basmak yerine İşleme Ekle işlevini kullanabilirsiniz F5.

Bu, altında yüklü VS hata ayıklayıcısının yavaşlaması olmadan bilinen çalışma bölümlerinde gezinmenize de izin verebilir.


Bunu denedim, ancak bir kesme noktası bulduğunda yürütmeyi durdurmayacak. Kesme noktalarında durmasına ihtiyacım var, bunu etkinleştirmenin bir yolu var mı? Teşekkürler.
sker

1
Uygulamanın / bin / klasöründeki tam olarak aynı derlemeleri yükleyen bir sürece bağlı olmanız şartıyla, tüm kesme noktaları çalışacaktır (oh ve .pdb dosyaları varsa!)
Aaron Powell

Bunu nasıl düzeltebileceğimi araştırdım ama bir sürü sorun gibi görünüyor. Çalışamadım. Bu arada Hat'ın çözümünü kullanacağım. Teşekkür ederim.
sker

"Harici bir uygulamadan bir istek bekle" seçeneği ile F5 tuşuna basarak hata ayıklayabilirsiniz, ancak Çalışmak için iliştirmek (INetMgr.exe ekleyerek) çalışamıyor. Kesinlikle durma noktasında durmaz. VS 2013'te VSCommands kullanıyordum, ancak VSCommands'ın yeni 2015 sürümü henüz "IIS'ye Ekle" yi desteklemiyor. Sorunun ne olduğunu bilseydim.
ErikE

12

Sorunumu aşağıdaki adımları izleyerek çözdüm. Araçlar >> seçeneklere tıklayın >> projeler ve çözümlere tıklayın >> web projeleri >> "Tarayıcı kapalıyken hata ayıklamayı durdur" seçeneğinin işaretini kaldırınresim açıklamasını buraya girin


En iyi çözüm, .net çekirdek projeme yardımcı oldu
V319

yetersiz cevap
Bimal Das

9

Bir web / uygulama projesini ilk açtığınızda , uygulamayı hata ayıklamadan başlatmak için kısayol olan bir Ctrl- yapın F5. Daha sonra vurduğunuzdaF5 hata ayıklayıcıyı başlattığınızda, IE örneğini kullanır. Sonra durdurun ve IE kapatmak yerine Visual Studio'da hata ayıklamayı başlatın.

Makinelerimde çalışıyor. Dahili dev web sunucusunu kullanıyorum. Bunun bir fark yaratıp yaratmadığını bilmiyorum.

Firefox da açık kalacak, böylece aynı anda veya her ikisinde de hata ayıklayabilirsiniz.


Hey işe yarıyor! Çok teşekkürler. Şimdi kodlama oturumu başına yaklaşık 100 ekstra pencereden kaçınabilirim. Ayrıca, F5 VS isabet zaman benim IE penceresini yeniden boyutlandırır. Bundan nasıl kaçınacağımı biliyor musun?
sker

Üzgünüm sker, bunun cevabını bilmiyorum - yukarıdakileri yapmak benim için bir şey değil, bu yüzden muhtemelen bir yerde bir cevap var. Belki IE pencere boyutunu hatırlıyor ve hata ayıklama senaryosuyla ilgisiz?
Rex Miller

7

Yukarıdakilerin hiçbirinin değil, aşağıdakilerin yardımcı olduğu bir durum var gibi görünüyor. Windows Azure bulut platformu için bir proje geliştiriyorum ve bir web rolüm var. Orada bir radyo düğmesi gerçekten de Do not açık sayfa içinde > {Proje adı} özellikleri ... - Proje olarak Pawel Krakowiak tarafından işaret edilmiş, ancak olursa olsun benim durumumda hiçbir etkisi yoktur. Ancak, çözüm gezginde ana bulut projesi var ve altında Roller klasörü var. Bu klasördeki web rolümü sağ tıklatıp Özellikler'i seçersem , başka bir ayar kümesi alıyorum ve Yapılandırma sekmesinde bayrak için tarayıcı başlat , işaretini kaldırdıktan sonra uygulama başlangıcında yeni bir tarayıcı penceresi açılmıyor.


6

Visual Studio Enterprise 2017 olan VS'mde belirtilen seçeneğe sahip olmadığım için başka bir seçenek aramak zorunda kaldım.

İşte bulduğum şey:

Araçlar -> Seçenekler -> Hata ayıklama sekmesine (Genel) gidin ve "Asp.Net (Chrome ve IE) için JavaScript hata ayıklamayı etkinleştir seçeneğini işaretleyin.

resim açıklamasını buraya girin


5

Joao Costa yanıtı .Net çekirdek 2 projeleri için de geçerlidir.

launchsettings.json -> "launchBrowser": yanlış

"profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": false,
      "environmentVariables": {
        "Hosting:Environment": "Development"
      }
    }
}

1
Bu süper yardımcı oldu. Bu launchSettings.json uygulamasının "Çözüm Gezgini"
ndeki

2

Cevapları inceledim ve bahsettiğim çözümü görmedim. Eğer öyleyse, özür dilerim. Benim durumumda, şu anda Visual Studio 2015 kullanılıyor. Çözüm gezgininde, Proje dosyasına sağ tıklayın ve özellikleri tıklayın. Hata Ayıkla sekmesine gidin ve bunun ilk iki açılır menü için "IIS Express veya Web (DNX)" uygulamasını nasıl başlattığınız hakkında bilgi içermesi gerekir ve ardından "URL Başlatma:" için bir onay işareti kutusu olmalıdır. Bu seçeneğin işaretini kaldırın; uygulamanızda hata ayıklamaya her gittiğinizde tarayıcınız otomatik olarak başlatılmaz. Umarım bu birisine yardım eder.


2

Her zamanki şüphelilerden daha yeni çözümlere kadar çeşitli mükemmel cevaplar olsa da, birden fazla projeyle bir çözüm üzerinde çalışırken yapmanız gerekenleri ele alan dövüşe bir tane daha vermek istiyorum .

Bu çözüme ulaşmadan önce bindingInformation, çözümün applicationhost.config dosyasına bakmaya devam ettim , yorulmadan işlerin neden işe yaramadığına dair herhangi bir ipucu arıyorum.

Görünüşe göre, gözden kaçırdığım basit şey, farklı projelerin de bireysel ayarlara sahip olmasıydı.

Bu yüzden, Project > {Project-Name} Properties... > Web > Start ActionArka Uç Projemin yanı sıra Website > Start Options... > Start ActionÖn Uç Projeme de gitmek zorunda kaldım . Bir kez orada seçtim Don't open a page. Wait for a request from an external applicationve o zamandan beri mutlu oldum !

Arka Uç Ayarları Ön Uç Ayarları


2

Haklısınız ı seçin, proje üzerinde tıklayabilirsiniz Propertiesüzerine, Debugsekme size işaretini gereken launch browseronay kutusunu.



0

Artık Çalıştır düğmesinin yanındaki açılır oku tıklayarak Web özelliklerine de ulaşabilirsiniz!

  1. "Çalıştır" ın yanındaki açılır düğmeyi tıklayın
  2. {Proje adı} Özellikler
  3. Soldaki listeden "Web" i tıklayın
  4. "İşlem Başlat" segmentinin altında Sayfa açma'yı tıklayın.

Hazırsınız!

Not: Bu benim için çalışıyor, VS Professional 2019'un 16.5.5 sürümündeyim :)

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.