Mic*_*ass 29 c# types quartz.net
我尝试使用本教程实现一个非常简单的Quartz.net实现
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);
Run Code Online (Sandbox Code Playgroud)
我遇到的问题(例如)MakeHourlyTrigger
在Intellisense中不可用,并给我错误
Quartz.TriggerUtils不包含'MakeHourlyTrigger'的定义.
我在类型上遇到错误,例如JobDetail
:
"无法找到类型或命名空间名称'JobDetail'(您是否缺少using指令或程序集引用?)"
也许我累了,错过了一些愚蠢而容易的东西......我希望是这样的.我在互联网上看到的所有例子都说我应该使用Quartz并使用Quartz.Impl.请告诉我,我只是遗漏了一些简单的东西......
Col*_*lin 11
我知道这不是正确的地方.我应该编辑原始的Wiki等等等等等等.我想在周五晚上做31个小时的工作.所以这里.
第1课
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Quartz;
using Quartz.Impl;
namespace QuartzNetTest
{
class Program
{
static void Main(string[] args)
{
// construct a scheduler factory
ISchedulerFactory schedFact = new StdSchedulerFactory();
// get a scheduler
IScheduler sched = schedFact.GetScheduler();
sched.Start();
// construct job info
IJobDetail jobDetail = JobBuilder.Create<HelloJob>()
.WithIdentity("myJob")
.Build();
ITrigger trigger = TriggerBuilder.Create()
.WithIdentity("myTrigger")
// fire every hour
.WithSimpleSchedule(x => x.WithIntervalInHours(1).RepeatForever())
// start on the next even hour
.StartAt(DateBuilder.FutureDate(1, IntervalUnit.Hour))
.Build();
sched.ScheduleJob(jobDetail, trigger);
}
}
class HelloJob : Quartz.IJob
{
public void Execute(IJobExecutionContext context)
{
Debug.WriteLine("Hello at " + DateTime.Now.ToString());
}
}
}
Run Code Online (Sandbox Code Playgroud)