Я использую Quartz.NET в своем веб-приложении ASP.NET. я поставил следующий код в обработчик нажатия кнопки, чтобы убедиться, что он выполняет (для целей тестирования):Quartz.NET триггер не срабатывает
Quartz.ISchedulerFactory factory = new Quartz.Impl.StdSchedulerFactory();
Quartz.IScheduler scheduler = factory.GetScheduler();
Quartz.JobDetail job = new Quartz.JobDetail("job", null, typeof(BackupJob));
Quartz.Trigger trigger = Quartz.TriggerUtils.MakeDailyTrigger(8, 30); // i edit this each time before compilation (for testing purposes)
trigger.StartTimeUtc = Quartz.TriggerUtils.GetEvenSecondDate(DateTime.UtcNow);
trigger.Name = "trigger";
scheduler.ScheduleJob(job, trigger);
scheduler.Start();
здесь «BackupJob»:
public class BackupJob : IJob
{
public BackupJob()
{
}
public void Execute(JobExecutionContext context)
{
NSG.BackupJobStart();
}
}
мой вопрос: почему «BackupJobStart() «Не стрелять? Я использовал аналогичный код раньше, и он работал нормально.
EDIT: @ Andy White, я бы получил его в Application_Start в Global.asax. это не работает, поэтому я переместил его в обработчик нажатия кнопки, чтобы сузить проблему.
Это помогло мне найти проблему, мое в том, что класс моя работа выполнял не имеет значения по умолчанию (без параметров) открытый конструктор. – patrickbadley