【发布时间】:2021-03-13 22:52:33
【问题描述】:
我正在开发一个 Asp.Net Core 3.1 应用程序,我需要在其中安排不同类型的作业。我们使用 Scoped 作业来处理 Scoped 服务(如 dbcontext)。最近,Quartz.NET 在 UseMicrosoftDependencyInjectionScopedJobFactory 的帮助下支持开箱即用的作用域作业(如官方文档中所述)。
但是,我不确定如何注册实际的调度程序以便将其注入我的服务并能够在运行时调度新作业。
我知道我可以通过这样做来获得 IScheduler:
ISchedulerFactory schedulerFactory = new StdSchedulerFactory();
scheduler = schedulerFactory.GetScheduler();
但我还没有找到任何关于如何在我的实际服务管道中注册它的文档。 这样做的正确/推荐/记录方式是什么?
【问题讨论】:
-
主机扩展有注册和启动/停止quartz-scheduler.net/documentation/quartz-3.x/packages/…。请参阅 GitHub 存储库中的示例 ASP.NET Core 应用程序
标签: c# .net dependency-injection asp.net-core-3.1 quartz.net