private async Task CreateTriggerAndStart(JobInfo job) { var scheduler = await _schedulerFactory.GetScheduler(); await TryAddJob(scheduler, job.Id); var data = new JobDataMap(); data.SetMapData(job); ITrigger newJobTrigger = TriggerBuilder.Create() .WithIdentity(job.GetTriggerKey()) .ForJob(job.GetJobKey()) .UsingJobData(data) .WithCronSchedule(job.Cron) .Build(); if (await scheduler.CheckExists(job.GetTriggerKey())) { await scheduler.RescheduleJob(job.GetTriggerKey(), newJobTrigger); } else { await scheduler.ScheduleJob(newJobTrigger); } }