Arrêtez Visual Studio de lancer une nouvelle fenêtre de navigateur lors du démarrage du débogage?

J’ai déjà une fenêtre ouverte avec le site Web que je débogue. Je n’ai pas besoin de VS pour en lancer une autre chaque fois que je dois déboguer.

Est-il possible d’arrêter ce comportement?

Ouvrez les propriétés de votre projet de démarrage ( Projet -> {NomProjet} Propriétés … dans le menu principal ou cliquez avec le bouton droit sur votre projet dans l’ Explorateur de solutions et choisissez Propriétés ), puis accédez à l’onglet Web et sous Démarrer l’action, choisissez Ne pas ouvrir page. Attendez une demande d’une application externe .

Vous pourrez toujours utiliser n’importe quel navigateur (ou Fiddler, quel qu’il soit) pour accéder à l’application en cours d’exécution, mais la fenêtre du navigateur ne s’ouvrira pas automatiquement, elle démarrera simplement en arrière-plan et attendra toute requête.

Pour VS 15.7.1 Options -> Projets et solutions -> Projets Web -> (décocher) Arrêter le débogueur lorsque la fenêtre du navigateur est fermée

Dans un projet ASP.Net 5, cela peut maintenant être défini pour chaque profil de lancement.

Ouvrez le fichier launchsettings.json dans le dossier Propriétés du projet de démarrage et ajoutez "launchBrowser": false au profil que vous configurez, par exemple dans:

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

Vous pouvez utiliser la fonction Attach To Process au lieu d’appuyer sur F5 .

Cela peut également vous permettre de naviguer dans des sections de travail connues sans ralentir le débogueur VS chargé en dessous.

Réponse mise à jour pour un projet .NET Core Web Api …

Décochez la case “Lancer le navigateur” (activée par défaut).

entrer la description de l'image ici

Lorsque vous ouvrez un projet web / app pour la première fois, faites un CtrlF5 , qui est le raccourci pour démarrer l’application sans débogage. Ensuite, lorsque vous appuyez sur F5 et lancez le débogueur, il utilisera cette instance d’IE. Puis arrêtez et démarrez le débogage dans Visual Studio au lieu de fermer IE.

Cela fonctionne sur mes machines. J’utilise le serveur Web de développement intégré. Je ne sais pas si cela fait une différence.

Firefox restra également ouvert pour que vous puissiez déboguer l’un ou l’autre ou les deux en même temps.

Il semble y avoir un cas dans lequel rien de ce qui précède, mais ce qui suit aide. Je développe un projet pour la plateforme cloud Windows Azure et j’ai un rôle Web. Il existe en effet un bouton radio Ne pas ouvrir la page dans Project -> {Nom du projet} propriétés … comme l’a souligné Pawel Krakowiak, mais cela n’a aucun effet dans mon cas. Cependant, il y a le projet de cloud principal dans l’explorateur de solutions et il y a le dossier Roles . Si je clique avec le bouton droit sur mon rôle Web dans ce dossier et que vous choisissez Propriétés , j’obtiens un autre ensemble de parameters et, dans l’onglet Configuration, cliquez sur Navigateur de lancement .

J’ai regardé les réponses et n’ai pas vu la solution que j’ai trouvée mentionnée. Si c’était le cas, mes excuses. Dans mon cas, utilisez actuellement Visual Studio 2015. Dans l’explorateur de solutions, cliquez avec le bouton droit sur le fichier du projet et cliquez sur les propriétés. Allez dans l’onglet Débogage et cela devrait avoir des informations sur la façon dont vous lancez «IIS Express ou Web (DNX)» pour les deux premiers menus déroulants, puis il devrait y avoir une case à cocher pour «Lancer l’URL:». Décochez cette option et votre navigateur ne sera pas automatiquement lancé chaque fois que vous allez déboguer votre application. J’espère que cela aide quelqu’un.

La réponse de Joao Costa est également valable pour les projets .Net Core 2.

launchsettings.json -> “launchBrowser”: false

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

Bien qu’il existe plusieurs excellentes réponses, allant des suspects habituels aux solutions les plus récentes , je souhaiterais fournir une réponse plus précise à ce que vous devez faire lorsque vous travaillez sur une solution comportant plusieurs projets .

Avant que j’arrive à cette solution, j’ai continué à regarder bindingInformation dans le bindingInformation applicationhost.config de la solution, cherchant sans relâche tout indice sur la raison pour laquelle les choses ne fonctionnaient tout simplement pas.

Il s’est avéré que la seule chose que j’ai négligée est que différents projets ont aussi des parameters individuels.

Donc, en plus de Project > {Project-Name} Properties... > Web > Start Action sur mon projet Backend, je devais également aller sur Website > Start Options... > Start Action sur mon projet Frontend. Une fois sur place, j’ai sélectionné Don't open a page. Wait for a request from an external application Don't open a page. Wait for a request from an external application et vous êtes content depuis!

Paramètres du backend Paramètres frontaux

Comme je n’avais pas l’option mentionnée dans mon VS qui est Visual Studio Enterprise 2017, j’ai dû chercher une autre option.

Voici ce que j’ai trouvé:

Allez dans Outils -> Options -> Onglet Débogage (Général) et désélectionnez “Activer le débogage JavaScript pour Asp.Net (Chrome et IE).

entrer la description de l'image ici