在ASP.NET MVC4中使用Quartz.NET執行定時任務


本篇在ASP.NET MVC下實踐使用Quartz.NET執行定時任務。

 

首先通過NuGet安裝Quartz.NET。

 

使用Quartz.NET的大致思路是:
1、實現IJob接口,定義具體要做的事情
2、使用Quartz.NET的API定義定時任務規則
3、在Application_Start注冊定時任務

 

實現IJob接口。

 

    public class MyJob : IJob
    {
        public void Execute(IJobExecutionContext context)
        {
            Debug.WriteLine("Hello at " + DateTime.Now.ToString());
        }
    }

 

在Global.asax中定義規則,並在Application_Start中注冊。

 

       protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            MyJobs();
            
        }
        private static void MyJobs()
        {
            //工廠
            ISchedulerFactory factory = new StdSchedulerFactory();
            //啟動
            IScheduler scheduler = factory.GetScheduler();
            scheduler.Start();
            //描述工作
            IJobDetail jobDetail = new JobDetailImpl("mylittlejob",null, typeof(MyJob));
            //觸發器
            ISimpleTrigger trigger = new SimpleTriggerImpl("mytrigger",
                null,
                DateTime.Now,
                null,
                SimpleTriggerImpl.RepeatIndefinitely,
                TimeSpan.FromSeconds(10));
            //執行
            scheduler.ScheduleJob(jobDetail, trigger);
        }

 

1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM