我想使用 Hangfire 创建一个定期作业,但我希望它被延迟并在某个日期开始。
例如,我将创建一个每周执行一项任务的作业,但我希望该任务在 3 天后开始!
经过搜索,我找不到既可以完成延迟任务又可以同时重复执行的东西。
我今天才开始使用hangfire,所以我还没有太多使用它的经验。
最佳答案
Hangfire 提供了通过这种方式创建重复性工作的可能性:
RecurringJob.AddOrUpdate(
() => myRecurringJob(),
Cron.Daily);
但是,正如您所提到的,这不允许推迟第一次发生的开始日期。要解决此问题,我建议使用计划作业稍后创建重复作业:
BackgroundJob.Schedule(() => myRecurringJobCreation(),
new DateTimeOffset(new DateTime(2017,2,10)));
//...
public void myRecurringJobCreation() {
RecurringJob.AddOrUpdate(
() => myRecurringJob(),
Cron.Daily);
}
关于asp.net - 在 asp.net 表单中使用hangfire 创建计划(延迟)重复作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42050397/