Hangfireで、所定の日数、たとえば8日後に実行される定期的なジョブを作成することは可能ですか?.
私が見つけた最も近いものは、週に一度ジョブを実行することでした-
RecurringJob.AddOrUpdate("MyJob",() => ScheduledJob(), Cron.Weekly());
Hangfireは標準のCronExpression
も受け入れることを理解し、この頻度のcron式を探そうとしましたが、その頻度を見つけることができませんでした- https://en.wikipedia.org/wiki/Cron
醜い解決策の1つは、月に一度、特定の日付に実行される3つまたは4つのジョブを作成することですが、私はそれをしたくありません。
何か提案してください。
最後に、このようにCronExpression
を使用して、8日おきまたは何日でも繰り返しジョブをスケジュールしました。
string cronExp = "* * */8 * *";
RecurringJob.AddOrUpdate("MyJob",() => ScheduledJob(), cronExp);
CronExpression
の3番目のセグメントは、月の日を表します。
それぞれのセグメントは次のとおりです 参照:---(https://en.wikipedia.org/wiki/Cron )
よりクリーンなソリューションはCron.DayInterval(interval)を使用することです。
あなたの場合、それは
RecurringJob.AddOrUpdate("MyJob",() => ScheduledJob(), Cron.DayInterval(8));