如何指定 quartz.net 分钟重复简单触发器的结束时间?

How can I specify end time for a quartz.net simple trigger on minute recurrence?

我有以下每 60 分钟运行一次的简单触发器。我希望这在给定日期结束。我怎样才能做到这一点?

ITrigger trigger = TriggerBuilder.Create()
                              .WithDescription("Minute")
                              .WithSimpleSchedule(x => x
                              .WithIntervalInMinutes(minutes))
                              .StartAt(DateBuilder.DateOf(StartHour, StartMinute, StartSeconds, StartDate, StartMonth, StartYear))
                              .Build();

我在 .StartAt 行之后尝试了 .EndAt。但它不起作用。请指教

你必须同时使用"EndAt" "RepeatForever":

ITrigger trigger = TriggerBuilder.Create()
                          .WithDescription("Minute")
                          .WithSimpleSchedule(x => x
                          .WithIntervalInMinutes(minutes)
                                        .RepeatForever())
                          .StartAt(DateBuilder.DateOf(StartHour, StartMinute, StartSeconds, StartDate, StartMonth, StartYear))
                          .EndAt(DateBuilder.DateOf(endMinnutes,endSeconds,endDate, endMonth, endYear))
                          .Build();

调度程序的默认行为是 repeatedcount 0。 当 repeatedcount 为 0 时,方法 "FinalFireTimeUtc" returns 开始日期。只有当 "FinalFireTimeUtc" returns null.

时你才会停止引发事件

要实现您正在寻找的行为,您必须同时使用 "EndAt" 和 "RepeatForever"