我正在asp.net核心中创建控制台应用程序,它将作为后台服务在不同的环境中运行。我使用了由"BackgroundService“提供的"Microsoft.Extensions.Hosting".类我想在我的程序启动时运行它的"ExecuteAsync“方法。UseConsoleLifetime()
文件: RabbitLister.cs
public class RabbitLister : Background
我已经创建了一个ASP.NET核心API,但是我想不出如何正确地实现IHostedService。我有几个需要作为后台进程运行的“工作者”类,所以我使用IHostedService启动所有任务异步。Startup.cs:BackgroundService.cs:
public class BackgroundService如何正确地取消所有正在运行的任务,并等待它们在StopAs
所以我觉得BackgroundService很适合。但问题是,它看起来像是BackgroundService主要用于循环任务,而不是根据这个answer按需执行。我使用的是asp.net核心3.1。 这是我的后台服务。Microsoft.Extensions.Logging;
public class EmailOfflineService : BackgroundService