2016-10-06 5 views
2

cronスケジュールや別のスケジュールタイプでは次のことが可能なのは誰にも分かりますか?Quartz.Net daily interval schedule

間隔(分単位)1h30と23h00 間毎日5 すべての二日目

私は近いが一日おき句なしで来たDailyIntervalScheduleを試してみました。私もcronを試しましたが、1時間30分から23時までの毎日の間隔のせいで失敗しました。

すべてのヘルプは本当に安いです。 ありがとうT4E

答えて

1

私が今説明している方法があなたを助けてくれることを願っています。 2つのトリガーを定義する必要があります。これらのトリガーは同じジョブでスケジュールする必要があります。

  // construct a scheduler factory 
     IScheduler sched = StdSchedulerFactory.GetDefaultScheduler(); 

     // define the job and tie it to our HelloJob class 
     IJobDetail job = JobBuilder.Create<HelloJob>().StoreDurably() 
      .WithIdentity("myJob", "group1") // name "myJob", group "group1" 
      .Build(); 

     sched.AddJob(job,true); 

     string cron = "0 0/5 2-23 1/2 * ?"; // interval in minutes 5 2h00 and 23h00 every second day 
     string cron1 = "0 30,35,40,45,50,55 1 1/2 * ?"; // 1h30 every second day 

     // Trigger the job to run now, and then every 40 seconds 
     ITrigger trigger = TriggerBuilder.Create() 
      .WithIdentity("trigger", "group1") 
      .StartNow() 
      .WithCronSchedule(cron) 
      .ForJob(job) 
      .Build(); 

     ITrigger trigger1 = TriggerBuilder.Create() 
       .WithIdentity("trigger1", "group1") 
       .StartNow() 
       .WithCronSchedule(cron1) 
       .ForJob(job) 
       .Build(); 


     // Tell quartz to schedule the job using our trigger 
     sched.ScheduleJob(trigger); 
     sched.ScheduleJob(trigger1); 

     sched.Start();