当 Quartz 部署为 windows 服务时在配置中设置 Cron 触发器

Setting Cron trigger in config when Quartz is deployed as windows service

我已经设置了 Quartz.net 服务器,因为 windows service.I 有一个作业可以使用它成功安排。但是这个作业每分钟后 运行。我想安排每天上午 11:00 和下午 11:00 的工作。

但是我不知道该怎么做。我有一个 Quartz.Server.Config 和一个 jobs_xml 文件。

请建议我在哪里设置此配置以及相同的 Cron 表达式。

您可以通过两种方式配置作业的日程安排。一种是通过您的 jobs_xml 文件,您需要在其中添加触发信息:

<job>
  <name>jobName</name>
  <group>simpleGroup</group> 
  <!-- other settings -->
</job>
<trigger>
  <simple>
    <name>triggerName</name> 
    <group>simpleGroup</group>
    <description>SimpleTriggerDescription</description>
    <job-name>jobName</job-name>
    <job-group>jobGroup</job-group>
    <misfire-instruction>SmartPolicy</misfire-instruction>
    <cron-expression>0 0 11,23 * * ?</cron-expression> <!-- fire every day at 11:00 and 23:00 -->
  </simple>
</trigger>

或从调度程序以编程方式:

   IJobDetail job = JobBuilder.Create(this.GetType())
        .WithIdentity("JobName")
        .Build();

   ITrigger strigger = TriggerBuilder.Create()
         .WithIdentity("trigger7", "group1")
         .StartAt(DateBuilder.DateOf(11, 0, 0))
         .WithSimpleSchedule(x => x
         .WithIntervalInHours(12)
         .RepeatForever())
         .Build();

   scheduler.ScheduleJob(detail, trigger);