实用技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > ASP.NET > 实用技巧 > ASP.NET MVC执行定时任务

ASP.NET MVC使用Quartz.NET执行定时任务

作者:Darren Ji

这篇文章介绍了ASP.NET MVC使用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);
        }

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文章:
阅读全文