Quartz.net是框架,非常適合于定期輪詢數據庫同步、定期郵件通知、定期數據處理等,下面就讓錯新技術頻道小編帶大家認識.net下Quartz.Net的使用方法吧!
1. 項目中添加quartz.net的引用(這里使用nuget管理)



新建一個類TimingJob,該類主要用于實現任務邏輯
using Quartz;using System;namespace QuartzNetDemo{ /// <summary> /// 定時任務類 /// </summary> public class TimingJob : IJob { public void Execute(IJobExecutionContext context) { //將要定時執行的邏輯代碼寫于此處 Console.WriteLine("任務執行了"); } }}在Program.cs中:(這里是控制臺應用程序)
using Quartz;using Quartz.Impl;using System;namespace QuartzNetDemo{ class Program { static void Main(string[] args) { ISchedulerFactory sf = new StdSchedulerFactory(); IScheduler scheduler = sf.GetScheduler(); IJobDetail job = JobBuilder.Create<TimingJob>().WithIdentity("job1", "mygroup").Build(); ITrigger trigger = TriggerBuilder.Create().StartAt(DateTime.Now.AddSeconds(5)).WithCronSchedule("/2 * * ? * *").Build(); scheduler.ScheduleJob(job,trigger); scheduler.Start(); } }}程序運行時,經過5秒后,每間隔2秒輸出信息

Cron表達式:
quartz.NET中的cron表達式使用形如 "/5 * * ? * * *"? 這樣的7位表達式,最后一位年非必選,表達式從左到右,依此是秒、分、時、月第幾天、月、周幾、年

特殊字符與解釋:
, 或的意思。
/?a/b。 a:代表起始時間,b頻率時間。
*?頻率。 即每一次波動。
-?區間。
??任意值 。 即每一次波動。只能用在DayofMonth和DayofWeek,二者沖突。指定一個另一個一個要用?
L?表示最后。 只能用在DayofMonth和DayofWeek
W?工作日。 表示最后。 只能用在DayofWeek
#x#y。 只能用DayofMonth。 某月的第y個星期x
以上就是關于.net下Quartz.Net的使用方法,通過錯新技術頻道的推薦內容,一定能給大家帶來諸多盛宴,希望能幫到大家。
新聞熱點
疑難解答
圖片精選