如何使IIS Express 运行所有网站都在一个解决方案中?

How to make IIS Express run all websites in a solution?

使用IIS Express 调试Visual Studio 中的Web 应用程序时,VS 会在您按F5 进行调试时运行 IIS Express 中的所有解决方案的Web 应用程序。但是,当您停止调试时,它实际上会停止 运行 访问 "Startup project" 网站,这意味着如果您随后尝试在浏览器中访问它,您只会得到一个 "connection closed".

我发现绕过此行为并使网站 运行 处于调试模式之外的唯一方法是右键单击 aspxhtml 文件和 select "View in browser" - 这使得 VS 运行 所有 Web 应用程序都在 IIS Express 中。但是,它要求您在 Web 应用程序中有这样一个文件,如果您的应用程序是 MVC,则可能不需要。

那么有没有办法明确告诉 VS 仅 运行 IIS Express 中的所有 Web 应用程序,即使 Visual Studio 未处于调试模式也允许您在浏览器中查看它们, 不使用 "right-click View in browser" 技巧?

当您单击停止调试时,VS 将终止附加调试器的 issexpress.exe 进程。

另一种方法是转到“调试”菜单和 Select 'Detach Debugger',这会在不终止 issexpress.exe 进程的情况下分离调试器,从而使您的网站仍然可见。

在调试下,您可以选择 "start without debugging"(我相信默认快捷方式是 CTRL+F5),它会启动网站但不会启动调试会话。

请记住,如果您关闭 VS(或 ISSExpress),应用程序仍将停止,编译代码中的任何更改都需要重新构建。