Search code examples
c#typesquartz.net

Quartz.NET implementation doesn't jive with tutorials


I attempted to implement a very simple Quartz.net implementation using this tutorial

using Quartz;
using Quartz.Impl;

// 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(HelloJob));
// fire every hour
Trigger trigger = TriggerUtils.MakeHourlyTrigger();
// start on the next even hour
trigger.StartTimeUtc = TriggerUtils.GetEvenHourDate(DateTime.UtcNow);  
trigger.Name = "myTrigger";
sched.ScheduleJob(jobDetail, trigger);

The problem I am running into is (for example) MakeHourlyTrigger is not available in the Intellisense, and gives me the error

Quartz.TriggerUtils does not contain a definition for 'MakeHourlyTrigger'.

I get errors on types such as JobDetail:

"The type or namespace name 'JobDetail' could not be found (are you missing a using directive or an assembly reference?)"

Maybe I'm tired and missing something stupid and easy... I hope that's the case. All of the examples I have seen on the Internets say that I should be using Quartz and using Quartz.Impl. Please tell me that I'm just missing something easy...


Solution

  • The documentation is aimed at the 1.0 API. Things have now changed, and yes, they are breaking changes.

    Check this official migration page out. You might find some solutions in there.