开发者

Quartz.Net - update/delete jobs/triggers

I'm using Quartz to pull latest tasks (from another source), it then adds it in as a job, creates triggers etc per each task. - Easy.

However, sometimes tasks change (therefore they already exist). Therefore I would like to change开发者_如何学Python its (lets say to keep it simple Description. Code below updates specific task's description with given date.

private static void SetLastPull(DateTime lastPullDateTime)
{
  var lastpull = sched.GetJobDetail("db_pull", "Settings");

  if(lastpull != null)
  {
    lastpull.Description = lastPullDateTime.ToString();
  }
  else
  {
    var newLastPull = new JobDetail("db_pull", "Settings", typeof(IJob));
    newLastPull.Description = lastPullDateTime.ToString();
    var newLastPullTrigger = new CronTrigger("db_pull", "Settings", "0 0 0 * 12 ? 2099");
    sched.ScheduleJob(newLastPull, newLastPullTrigger);
  }
}

I'm assuming after I do lastpull.Description = lastPullDateTime.ToString(); I should call something to save changes to database. Is there a way to do it in Quartz or do I have to go to using other means and update it?


You can't change (update) a job once it has been scheduled. You can only re-schedule it (with any changes you might want to make) or delete it and create a new one.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜