首页 > 解决方案 > Asp Core 3.0 - 在发出请求之前不调用 Program.Main 和 Startup

问题描述

我正在用 SPA 构建一个 ASP Core 3.0 Api。我正在尝试使用 AddHostedService 添加 bagkground 服务:

  public static IWebHostBuilder CreateWebHostBuilder(string[] args)
  {

     var builder = WebHost.CreateDefaultBuilder(args)
          .UseStartup<Startup>()
          .ConfigureServices((hostingContext, services) =>
          {
             //Add scheduled update
             services.AddHostedService<ScheduledUpdateService>();
          });

     return builder;
  }

问题是当我在 Visual Studio 中点击运行时,该服务没有自动启动。这是因为虽然服务器似乎正在运行,但 Program.Main 方法尚未被调用。如果我向服务器发送 HTTP 请求,Program.Main 会被调用。

这是我部署时会发生的事情,还是只是我在 Visual Studio 中运行服务器时发生的事情?

标签: asp.net-core

解决方案


推荐阅读