使用Quartz.net动态设置定时时间问题

关于使用Quartz.net就不用解释了。。

应客户需求问题。。需要将做一个界面设置定时的时间。因此我在百度一番。。用CronExpression类可以设置时间。。。

我知道这个类有定义好的字段。。不知道是不是我用的方式不对。。反正我没找到。。

于是我就这么干的。。

 /// <summary>
        /// 定时方法
        /// </summary>
        /// <param name="week"></param>
        /// <param name="hour"></param>
        /// <param name="minute"></param>
        private void Timing(string week, string hour, string minute)
        {
            IScheduler sched1;
            ISchedulerFactory sf1 = new StdSchedulerFactory();
            sched1 = sf1.GetScheduler();
            JobKey jobkey1 = new JobKey("myjob1", "mygroup1");
            IJobDetail job1 = JobBuilder.Create<WebDemo.quartz>().WithIdentity(jobkey1).Build();
            string t = "";
            if (week == "*")
            {
                //每天
                t = "0 " + minute + " " + hour + " ? * *";//每天的某时某分0秒
            }
            else
            {
                //某天
                t = "0 " + minute + " " + hour + " ? * " + week;//某天的某时某分0秒
            }
            CronExpression cron = new CronExpression(t);
            IOperableTrigger trigger1 = new CronTriggerImpl("trigName1", "group12", cron.CronExpressionString);
            sched1.ScheduleJob(job1, trigger1);
            sched1.Start();
        }

然后就OK了。。嘿嘿。。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。