You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Visual Studio调试ASP.NET Core应用时启动失败及除零错误

问题描述

使用Visual Studio调试ASP.NET Core项目时,浏览器打开新标签页持续加载,随后调试提前终止,出现以下现象:

  • Visual Studio输出窗口重复出现:
    EventSource Error: ERROR: Exception during EventCounter cpu-usage metricProvider callback: Attempted to divide by zero.
    The thread '[Thread Destroyed]' (13472) has exited with code 0 (0x0).
    
    最终输出:
    EventSource Error: Reached message limit.   End of EventSource error messages.
    The program '[9144] iisexpress.exe' has exited with code 0 (0x0).
    
  • 浏览器显示错误:
    HTTP Error 500.37 - ASP.NET Core app failed to start within startup time limit
    

已尝试操作:

  • 重新安装Visual Studio
  • 将内存占用降至约60%
  • 修改IIS Express应用URL端口

备注:曾偶然调试成功一次,但后续失效;项目在其他电脑可正常运行,最初内存占用96%,降内存后问题依旧。

排查与解决步骤

1. 禁用EventCounter CPU监控

输出中的Attempted to divide by zero错误来自CPU使用率MetricProvider回调异常,属于ASP.NET Core性能监控组件问题,可通过配置禁用相关监控:

  • 在项目Program.cs中修改WebHost配置:
    var builder = WebApplication.CreateBuilder(args);
    // 添加禁用EventCounter配置
    builder.WebHost.ConfigureServices(services =>
    {
        services.Configure<EventCounterOptions>(options =>
        {
            options.DisableEventCounters = true;
        });
    });
    
    或在appsettings.json中添加配置:
    {
      "EventCounterOptions": {
        "DisableEventCounters": true
      }
    }
    

2. 延长ASP.NET Core启动超时时间

针对HTTP Error 500.37,修改IIS Express配置延长启动超时:

  • 找到项目根目录下的.vs\config\applicationhost.config文件(.vs为隐藏文件夹)
  • 定位对应<site>节点下的<application>标签,添加或修改startupTimeLimit属性(如设置为300秒):
    <application path="/" applicationPool="Clr4IntegratedAppPool" startupTimeLimit="300">
      <virtualDirectory path="/" physicalPath="你的项目物理路径" />
    </application>
    

3. 排查本地环境依赖差异

由于项目在其他电脑正常运行,重点检查本地环境差异:

  • 执行dotnet --version查看本地.NET Core SDK版本,确保与项目要求一致,版本不匹配则安装对应版本
  • 清理项目的bin和obj目录,重新生成解决方案
  • 禁用Visual Studio第三方扩展(路径:工具 -> 扩展和更新),重启VS后重试调试

4. 定位启动代码阻塞点

偶然成功说明启动逻辑存在不稳定阻塞环节:

  • 在Program.cs(或旧模板的Startup.cs)中添加日志,标记启动各阶段的耗时
  • 检查是否存在同步调用远程接口、数据库初始化等阻塞操作,改为异步实现

内容的提问来源于stack exchange,提问作者Danu Hary P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 15:24:51