Visual Studio网站项目调试模式不会自动结束

4
在WPF或WinForms应用程序中,按下F5(或单击绿色箭头)时,它会以调试模式打开应用程序。然后当你关闭应用程序时,它就停止了调试模式(你可以在工具栏上单击绿色箭头或再次按下F5)。
但是,对于任何在浏览器中运行的Web应用程序(ASP.NET、MVC等),当我关闭浏览器窗口时,Visual Studio仍然处于调试模式(F5无效,绿色箭头被禁用)。这只是个小问题,我已经容忍了几个月...但现在真的让我很恼火。如何解决这个问题?
如果有区别的话,我使用Chrome的Dev版本和Visual Studio 2010 Professional。
编辑 为了澄清,我已经知道如何结束调试模式。我只是希望在关闭浏览器时自动结束调试模式。
2个回答

6

F5会启用调试模式,但Shift + F5用于退出调试模式。


1
我知道如何退出调试模式,但我希望在关闭浏览器窗口时自动执行。 - Entity
4
抱歉,我误解了你的问题。据我所知,谷歌浏览器无法做到这一点。即使只关闭选项卡而不是窗口,使用Internet Explorer和Firefox应该也能正常工作。他们的逻辑是为每个窗口/选项卡创建单独的进程,因此关闭一个将终止该进程并向VS发出停止调试的信号。据我了解,Chrome也会创建单独的进程,因此可能VS无法识别进程是否已终止或其他什么原因。对此我不太确定,抱歉:( - BlackJack

0

我不确定你是否遇到了和我一样的问题,但如果你手动设置“启动外部程序:”在项目属性下选择你想要使用的浏览器,即使它是你的默认浏览器,并确保你在下面的字段中拥有localhost:Port#,它应该解决你的问题。

在将Windows 7 32位升级到64位之前,我还可以进行调试(Visual Studio 2010关闭Firefox后会退出调试模式)。重新安装所有内容后,Visual Studio无法退出调试模式,我花了至少一个小时来尝试找出原因,认为这与我的IIS配置或Firefox中的设置有关。

发生的事情是以前我将Chrome作为我的默认浏览器,升级后我决定使用Firefox作为默认浏览器。因此,我没有填写“启动外部程序”,而是选择“指定页面:”以启动我的默认浏览器。但显然Visual Studio不能通过这种方式附加到进程。希望这能帮助你,如果不是你,也能帮助其他人。:)


我尝试了这个 - 启动外部程序 "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 和命令行参数 "http://localhost:51491/"。VS 正确地打开了浏览器,但没有进入调试模式。 - Avi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接