Общая настройка задач Quartz.NET - PullRequest
0 голосов
/ 12 марта 2019

Обычная настройка задач, основанных на cron для Quartz, выглядит следующим образом:

IJobDetail firstJob = JobBuilder.Create<FirstJob>()
               .WithIdentity("firstJob")
               .Build();

ITrigger firstTrigger = TriggerBuilder.Create()
                 .WithIdentity("firstTrigger")
                 .StartNow()
                 .WithCronSchedule("0 * 8-22 * * ?")
                 .Build();

FirstJob - это особый класс, который реализует интерфейс IJob из Quartz.В моем случае у меня может быть несколько классов заданий, реализующих этот интерфейс, каждый из которых выполняет определенный тип работы, который необходимо запланировать.

Поэтому мне кажется, что я вынужден настроить столько экземпляров сведений о задании, сколько у меня есть классов заданий.т.е. повторить код.Есть ли другой способ упростить и сократить его и получить коллекцию объектов сведений о задании, неявно передавая имена классов заданий?Скажем, вся моя классифицированная работа будет реализовывать CustomInterface : IJob, и я предпочитаю использовать имя CustomInterface где-то для настройки деталей работы.

1 Ответ

0 голосов
/ 14 марта 2019

Решено.

 IJobDetail job = JobBuilder.Create(Type.GetType(jobDetail.JobKey.Name))
...