Quartz.Net的使用

首先下載依賴dll:https://www.quartz-scheduler.net/download.html


將下載好的三個dll引入:Common.Logging.Core.dll,Common.Logging.Core.dll,Common.Logging.Core.dll


使用:

在Global.asax的Application_Start方法中配置定時任務:

        void Application_Start(object sender, EventArgs e)
        {
            // 配置Web Api
            GlobalConfiguration.Configure(ConfigWebApi);

            // 配置MVC
            ConfigMVC();

            //SchedulerJob.Start();
            //SchedulerJob.Start2();
        }

public class SchedulerJob
    {
        public static void Start2()
        {
            IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();

            scheduler.Start();

            IJobDetail jobDetail = JobBuilder.Create<JDAlertJob>()
                .WithIdentity("job1", "group1")
                .Build();

            ITrigger trigger = TriggerBuilder.Create().WithIdentity("trigger1", "group1")
                .WithSchedule(CronScheduleBuilder.DailyAtHourAndMinute(16, 50))
                    .Build();
            scheduler.ScheduleJob(jobDetail, trigger);
            //scheduler.Shutdown();
        }

        public static void Start()
        {
            IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();
            scheduler.Start();

            IJobDetail job = JobBuilder.Create<JDAlertJob>().Build();

            ITrigger trigger = TriggerBuilder.Create()
                .WithDailyTimeIntervalSchedule
                  (s => s.WithIntervalInHours(24)
                    .OnMondayThroughFriday()
                    .StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(16, 50))
                  )
                .Build();

            scheduler.ScheduleJob(job, trigger);
        }
    }


可以定時每天固定時間點執行job,也可以在時間點跑一次job

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章