我怎样才能在每两周的星期一和星期二运行石英计划?

我使用以下方式在星期一每两周运行一次计划。

ITrigger trigger = TriggerBuilder.Create() .StartAt(DateBuilder.DateOf(StartHour, StartMinute, StartSeconds, StartDate, StartMonth, StartYear)) .WithCalendarIntervalSchedule(x => x.WithIntervalInWeeks(Int32.Parse(nWeekInterval))) .EndAt(DateBuilder.DateOf(0, 0, 0, EndDay, EndMonth, EndYear)) .Build(); 

但是我如何使用单一的时间表在星期一和星期二运行。 请指教。

您可以使用DailyTimeIntervalScheduleBuilder指定一周中的DailyTimeIntervalScheduleBuilder

 var onMondayAndTuesday = DailyTimeIntervalScheduleBuilder.Create() .OnDaysOfTheWeek(new DayOfWeek[] { DayOfWeek.Monday, DayOfWeek.Tuesday }); var trigger = TriggerBuilder.Create() .StartAt(DateBuilder.DateOf(StartHour, StartMinute, StartSeconds, StartDate, StartMonth, StartYear)) .WithSchedule(onMondayAndTuesday) .WithCalendarIntervalSchedule(x => x.WithIntervalInWeeks(Int32.Parse(nWeekInterval))) .EndAt(DateBuilder.DateOf(0, 0, 0, EndDay, EndMonth, EndYear)) .WithIdentity(triggerKey) .Build(); 

我会创建一个有两个不同触发器的工作。 每个触发器每两周(或半个月)触发一次。

使用以下表达式安排作业在备用星期一和星期二运行。

 0 0 0 1-7,15-21,29-31 * 1,2 * 

以下是表达式的描述方式。

0 – 0秒

0 – 0分钟

0 – 0小时

1-7,15-21,29-31 – 在该月的另一周

  • – 任何一个月

1,2 – 星期一和星期二

  • – 任何一年。