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

将Quartz部署为windows服务时在配置中设置Cron触发器,cron,quartz-scheduler,quartz.net,Cron,Quartz Scheduler,Quartz.net,我已将Quartz.net服务器设置为windows服务。我有一个作业已使用此服务成功计划。但这项工作每分钟都在进行。我想把工作安排在每天上午11点和晚上11点 但是我不知道怎么做。我有一个Quartz.Server.Config和一个jobs_xml文件 请告诉我将在何处设置此配置,以及相同配置的Cron表达式是什么。您可以通过两种方式配置作业计划。一种是通过jobs_xml文件,您需要在其中添加触发器信息: <job> <name>jobName</name

我已将Quartz.net服务器设置为windows服务。我有一个作业已使用此服务成功计划。但这项工作每分钟都在进行。我想把工作安排在每天上午11点和晚上11点

但是我不知道怎么做。我有一个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);