【发布时间】:2015-02-26 17:55:25
【问题描述】:
我在 C# 中使用了 cron 计划来创建一个应该只触发一次作业的应用程序。这段代码抛出异常, Quartz.dll 中发生了“Quartz.SchedulerException”类型的未处理异常
下面是我的代码:
class Program
{
static void Main(string[] args)
{
Test();
}
public static void Test()
{
ISchedulerFactory schedulerFactory = new StdSchedulerFactory();
IScheduler scheduler = schedulerFactory.GetScheduler();
IJobDetail jobDetail = JobBuilder.Create<SatellitePaymentGenerationJob>()
.WithIdentity("TestJob")
.Build();
Console.WriteLine(DateBuilder.DateOf(16, 30, 00, 24, 2, 2015));
//ITrigger trigger = TriggerBuilder.Create()
// .ForJob(jobDetail)
// .WithCronSchedule("0 0 12 20 4 ? *")
// .WithIdentity("TestTrigger")
// .StartNow()
// .Build();
ITrigger trigger = TriggerBuilder.Create()
.WithDescription("Once")
.WithSimpleSchedule(x => x.RepeatForever().WithRepeatCount(1))
.StartAt(DateBuilder.DateOf(12, 43, 00, 26, 2, 2015))
.Build();
scheduler.ScheduleJob(jobDetail, trigger);
scheduler.Start();
}
}
internal class SatellitePaymentGenerationJob : IJob
{
public void Execute(IJobExecutionContext context)
{
Console.WriteLine("test");
}
}
我相信我安排只执行一次的方式会导致问题。请指教。
【问题讨论】:
-
你还需要一个 cronschedule
标签: c# .net cron quartz-scheduler cronexpression