服务层上有一个方法,我们需要用HangFire定期调用它,所以问题是,在asp.net核心中实现RecurringJob
的最佳位置在哪里?
如果startup.cs中的configure method是最好的,那么我们如何处理startup.cs中该方法所需的所有依赖关系?
我尝试过:
RecurringJob.AddOrUpdate("FixOrderJob", () => Job.FromExpression<IOrderFixerService>(x => x.FixUnknownOrder()), Cron.MinuteInterval(5));
但发生以下错误:
System.NotSupportedException: 'Anonymous functions, delegates and lambda expressions aren't supported in job method parameters: it's very hard to serialize them and all their scope in general.'
答案 0 :(得分:3)
如果要使用hangfire运行重复作业,最好的启动方式是启动类。
#N/A
类基于hagnfire recurrent task documentation,是IFERROR(.....,"")
类的外观。因此,只需将IRecurringJobManager作为参数注入并在那里配置您的作业:
RecurringJob