安排每周执行一次的Quartz.NET触发器

时间:2015-12-01 17:18:23

标签: asp.net-mvc scheduled-tasks quartz-scheduler scheduling quartz.net

我需要安排Quartz.NET触发器,以便它在每个星期一09:00触发。所以,我尝试使用如下的一些功能,但我认为它不正确,因为参数不合逻辑(它适用于日常调度,但在更改为此之后它不会)。那么,你能举一个每周执行一次工作的例子吗?

ITrigger trigger = TriggerBuilder.Create()
    .WithDailyTimeIntervalSchedule
    (s =>
        s.WithInterval(1, IntervalUnit.Week)
        .OnDaysOfTheWeek(DayOfWeek.Monday)
        .StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(9, 0))
     )
     .Build();

scheduler.ScheduleJob(job, trigger);

1 个答案:

答案 0 :(得分:1)

ITrigger trigger= TriggerBuilder.Create()
             .WithIdentity("trigger1", "group1")
            .WithSchedule(CronScheduleBuilder.CronSchedule("0 0 9 ? * MON")).Build();

scheduler.ScheduleJob(job, trigger);

请尝试上面的代码。在这里,我传递了一个参数“ 0 0 9?* MON”,该触发器将在星期一09.00触发。

供参考,请点击此处http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/crontrigger.html