现在做的项目都有用到Schedule,现在用一点时间来总结。

一、首先要到Nuget中下载Quartz.net。

二、下载下来了,你需要对它进行配置,使它能给你正常的使用。

三、在Global.asax中进行quartz进行初始化。

四、quartz_jobs_Schedule.xml 可以在这边个格式是这样的。 

<schedule>
<name>DownloadDso</name>
<job-type>LocalKwmsOne.Schedule.Jobs.DownloadDSOToSystem, LocalKwmsOne.Schedule</job-type>
<durable>true</durable>
<recover>false</recover>
<cron-expression>0/45 * * * * ?</cron-expression>
<status>Enabled</status>
</schedule>

五、这边一个建立一个list来保存xml文件中的节点中各个字段的值。

public List<ScheduleTask> ScheduleTaskInit()
{
List<ScheduleTask> ScheduleTask = new List<ScheduleTask>();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(quartz_jobs_Schedule_Path);
XmlNodeList nodeList = xmlDoc.SelectSingleNode("job-scheduling-data").ChildNodes;

foreach (XmlNode xn in nodeList)
{

string taskName = String.Empty;
string taskType = String.Empty;
string cronString = String.Empty;
string taskStatus = String.Empty;
Dictionary<string, object> taskParameter = new Dictionary<string, object>();

XmlElement xe = (XmlElement)xn;
XmlNodeList nls = xe.ChildNodes;
foreach (XmlNode xn1 in nls)
{
if (xn1.Name == "name")
{
taskName = xn1.InnerText;
continue;
}
if (xn1.Name == "job-type")
{
taskType = xn1.InnerText.Split(',')[0];
continue;
}
if (xn1.Name == "status")
{
taskStatus = xn1.InnerText;
continue;
}
if (xn1.Name == "cron-expression")
{
cronString = xn1.InnerText;
continue;
}
taskParameter.Add(xn1.Name, xn1.InnerText);
}
if (ScheduleTask.Where(t => t.TaskName.Equals(taskName)) != null && ScheduleTask.Where(t => t.TaskName.Equals(taskName)).Count() > 0)
continue;
ScheduleTask.Add(new ScheduleTask(taskName, taskType, cronString, taskParameter, taskStatus));
}
return ScheduleTask;
}

六、然后在global中进行参数传入,进行foreach每一个list初始化,scheduler.scheduleJob(,);这边进行Schedule的

设置。

Schedule 学习的更多相关文章

  1. springTask和Schedule学习

    Spring 4.x Task 和 Schedule 概述 http://www.jianshu.com/p/1778f6b9646e spring framework --- 定时任务(翻译官方文档 ...

  2. Cocos2d-x学习笔记(六) 定时器Schedule的简单应用

     Cocos2d-x中的定时器使用非常easy,共同拥有3种:schedule.scheduleUpdate和scheduleOnce.简介一下三种的差别: schedule,每隔指定时间运行某个 ...

  3. Python源码学习Schedule

    关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...

  4. 【转】Python源码学习Schedule

    原文:https://www.cnblogs.com/angrycode/p/11433283.html ----------------------------------------------- ...

  5. 定时任务调度工作(学习记录 四)schedule与scheduleAtFixedRate的区别

    根据两种情况来看区别 一.首次计划执行的时间早于当前的时间 1.schedule方法 “fixed-delay”:如果第一次执行时间被延迟了,随后的执行时间按照上一次实际执行完成的时间点进行计算 演示 ...

  6. 全面学习ORACLE Scheduler特性(4)创建和管理Schedule

    三.使用Schedules 10g 中新推出的SCHEDULER可能确实会让很多初接触的朋友感觉晕头晕脑,相比之前的jobs,SCHEDULER中新增的概念太多.比如说jobs,仍然可以理解成之前版本 ...

  7. Python3.7.1学习(二)使用schedule模块定时执行任务

    python中有一个轻量级的定时任务调度的库:schedule.他可以完成每分钟,每小时,每天,周几,特定日期的定时任务.因此十分方便我们执行一些轻量级的定时任务. 1 安装  1.1在cmd中输入p ...

  8. 【学习中】Unity<中级篇> Schedule

    章节 内容 签到 Unity3D 实战技术第二版视频教程(中级篇) 1.游戏引擎发展史 2.Unity发展史 3.3D图形学与必要组件 5月19日 4.核心类_GameObject类 5月19日 5. ...

  9. cocos2d-x 3.0 学习笔记: 一个可以拖拽的Label及schedule的应用

    #ifndef _DRAGLABEL_H_ #define _DRAGLABEL_H_ #include "cocos2d.h" USING_NS_CC; class DragLa ...

随机推荐

  1. thinkphp3.1.3中widget用法

    今天搞了tp3.1的widget,继承了widget类,但是老是掉用错误,所以换种写法,直接继承action TestAction.class.php $this->display();//调用 ...

  2. Python’s SQLAlchemy vs Other ORMs[转发 4]peewee

    peewee peewee is a small, expressive ORM. Compared to other ORMs, peewee focuses on the principal of ...

  3. 张艾迪(创始人): 整合全新的UIW.AD概念模式

    The World No.1 Girl :Eidyzhang The World No.1 Internet Girl :Eidyzhang AOOOiA.global Founder :Eidyzh ...

  4. EntityFrameWork使用MySql数据库分页的BUG

    环境 使用MySQL Connector NET 6.7.4+EF5.0+VS2010 问题描述 IQueryable<T>类型的Where方法和Skip或Take方法一起使用时,生成的S ...

  5. HDMI之CEC DDC学习笔记(可能有误)

    1 HDMI的音视频通路,有待学习: 2 DDC通路,大致是个IIC接口,读取上游器件的EDID或者E-EDID数据: EDID的前128字节数据格式如下:(可能有不同版本,格式可能有区别)

  6. $(window).height()获取到的高度不对

    关于这个问题,网上有人说这是webkit内核的浏览器导致的,且只有这种浏览器会出现,只需要将html5的声明整成标准的带有<!doctype>的声明的就行了,但是本人亲测仍然是不行的,所用 ...

  7. CSS实现各种形状

    CSS3的一个非常酷的特性是允许我们创建各种规则和不规则形状的图形,从而可以减少图片的使用.以前只能在Photoshop等图像编辑软件中制作的复杂图形现在使用CSS3就可以完成了.通过使用新的CSS属 ...

  8. mysql5.7碰到的坑

    日志输出时区问题 输出日志有这些信息2016-08-16T02:23:09.831827Z 112241 [Note] Aborted connection 112241 to db: 'test' ...

  9. 极光推送Jpush(v3)服务端PHP版本集成(V3版本只调用推送API)

    因为版本升级,极光推送的API也有了V3,功能也更丰富了,但是对于我们有的用户来说,我们还是只需要调用推送的API就够了. 下载了一份PHP服务端的SDK(下载地址:http://docs.jpush ...

  10. OC中用NSSortDescriptor对象进行数组排序

    //创建一个数组 NSArray *array = @[@"one", @"two", @"three", @"four" ...