ASP.NET Core MVC 3.1中的后台任务

我想在asp.net核心mvc应用程序中运行后台任务。

这是我所做的:

在Startup.cs中:

public void ConfigureServices(IServiceCollection services)
{
   ...
   services.AddHostedService<MyTask>();
}

在MyTask.cs中:

public class MyTask: BackgroundService
{
   ...
   public override async Task StartAsync(CancellationToken cancellationToken)
   {
      _logger.LogInformation("StartAsync");
   }

   public override async Task StopAsync(CancellationToken cancellationToken)
   {
      _logger.LogInformation("StopAsync");
   }

   ...
}

这是我注意到的:  -在IIS上部署网站时,我需要点击一个页面才能启动服务  -我注意到如果我什么也不做,则叫Stop。

我的问题是:如何使我的应用程序保持活动状态? 我需要每分钟执行一次任务...

谢谢

评论