IIS Express在调试会话结束时不会停止

问题描述 投票:15回答:6

当我在Visual Studio 2017中停止调试网站时,IIS Express不再停止。

我不确定这种行为何时开始,但我有以下设置:

  • Visual Studio 15.5.2(已修复)
  • IIS Express 10.0 x64(重新安装)
  • 针对net461的ASP.Net Core 2项目
  • 我在工具 - >选项 - >调试 - >常规中禁用了“启用编辑并继续”

不确定何时开始发生,也许当我更新到最新的VS版本时。

我还能尝试什么?

asp.net-core visual-studio-2017 iis-express asp.net-core-2.0
6个回答
5
投票

适用于Visual Studio 2017中的.net Core Web项目

如果你添加:

<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>

要么:

<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>

在project.csproj配置的第一个PropertyGroup中,您将改变iis express行为。

  • InProcess将在调试后杀死iis express。
  • 如果设置丢失或设置为OutOfProcess iis express将保持进程运行。

- 此设置更新解决方案的.vs \ config \ applicationhost.config,并将hostModel =“InProcess”添加/删除到项目的iis express启动配置中。

  <aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" hostingModel="InProcess" />

(您无需更改applicationhost.config,仅供参考)


4
投票

如果未选中Enable Edit and Continue,那么即使在调试停止后,IIS Express仍会继续运行。

如果您需要,可以取消选中它:

右键单击您的项目»单击Properties»选择Web选项卡»Enable Edit and Continue复选框enter image description here


4
投票

可以选择控制Visual Studio中的行为。

编辑并继续定位

enter image description here

最新的VS 2017更新必须打开它。

再次关闭标记选项时,IIS Express会在结束调试会话时停止。


2
投票

显然,ASP.NET Core中不停止IIS Express的设计是:https://github.com/dotnet/project-system/issues/3394#issuecomment-378307654


0
投票

如果问题偶尔出现(没有再现性),它可能是asp或vs上的问题或错误,为什么不保存项目,然后直接杀死进程并重新运行它?


0
投票

IIS Express保持站点(如IIS),您可以转到任务栏,右键单击IIS Express图标,您将能够手动停止每个站点。

© www.soinside.com 2019 - 2024. All rights reserved.