石英网调度程序 - 时间表作业

问题描述:

我有什么应该是一个简单的任务。我创建一个新的工作,如果持久化,并使用IScheduler.AddJob方法添加添加。这项工作是注册的,但对我来说,我无法想象如何将触发器分配给它。石英网调度程序 - 时间表作业

+0

你看看与API文档? http://quartznet.sourceforge.net/apidoc/topic928.html – Andreas

+0

我确实花了很多时间来查看API。我确实让它工作。在我看来,日程安排工作方法中的措辞有点奇怪,界面并未明确表达其意图。 –

这是从tutorial

// construct a scheduler factory 
ISchedulerFactory schedFact = new StdSchedulerFactory(); 

// get a scheduler 
IScheduler sched = schedFact.GetScheduler(); 
sched.Start(); 

// construct job info 
JobDetail jobDetail = new JobDetail("myJob", null, typeof(DumbJob)); 
// fire every hour 
Trigger trigger = TriggerUtils.MakeHourlyTrigger(); 
// start on the next even hour 
trigger.StartTime = TriggerUtils.GetEvenHourDate(DateTime.UtcNow); 
trigger.Name = "myTrigger"; 
sched.ScheduleJob(jobDetail, trigger); 
+2

我的问题不是如何创建工作或如何安排工作,而是如何将一个或多个触发器添加到现有工作。诀窍在于使用附加到触发器的现有作业细节的ScheduleJob(触发器)重载。您的示例中的方法失败,因为它会在计划它时尝试创建重复的作业。 –