Quartz-schedule.net 从触发器获取调度

Quartz-schedule.net getting schedule from trigger

我有一个触发器持久保存到数据库中。我需要能够将时间表呈现给用户,以便他们可以看到或更改它。

如何从 TriggerKey 获取 cron 计划

var trigger = TriggerBuilder.Create()
            .WithIdentity("trigger3", "group2")
            .StartNow()
            .WithCronSchedule("0/5 * * * * ?").Build();

构建完上面的内容后,我该如何取回它?

首先必须将其添加到调度程序中:

            var scheduler = StdSchedulerFactory.GetDefaultScheduler();
            scheduler.Start();
            var job = JobBuilder.Create<ClassType>()
                        .Build();

            var trigger = TriggerBuilder.Create()
                        .WithIdentity("Your ID")
                        .StartNow()
                        .WithSimpleSchedule(simpleSchedule => simpleSchedule.WithRepeatCount(0))
                        .Build();

            scheduler.ScheduleJob(job, trigger);

那么您应该能够像这样获得作业和触发器:

var groups = scheduler.GetJobGroupNames();
var triggers = scheduler.GetTriggerGroupNames();

并且您可以使用以下方法从日程表中删除项目:

scheduler.DeleteJob(JobKey jobKey);

假设您已经按照描述here安排了作业,您可以像这样检索它的触发器:

var triggerKey = new TriggerKey("trigger3", "group2");
var trigger = scheduler.GetTrigger(triggerKey);