DNN调度管理解析(二)-----自定义调度任务
在前面提到DNN中是可以提供自定义调度服务的,为了在DNN实现自定义调度,开发者需要创建一个类继承于DotNetNuke.Services.Scheduling.SchedulerClient (在$DNNNroot/ Providers/Scheduling/子目录下),而且必须提供一个构造函数和一个DoWork()方法,在构造函数里你可以设置ScheduleHistoryItem为引入的参数; 而在DoWork()方法里你需要把你的逻辑代码包含于Try-Catch捕捉异常代码块中。 解析代码 比如下边提供的一个调度任务,它实现了将所有的日志文件搁放在一个相应的文件夹里边(我们可设置让该调度程序每天运行一次,而文件夹名称即为该调度任务执 行的日期),这无疑给庞大的日志文件管理提供极大的方便!其中需要注意的就是DoWork()方法的实现,在这列几点: 1)Me.Progressing 即是告知调度服务任务正在执行,这在运行长期的调度任务很有用处尽管这是可选的 2)Me.ScheduleHistoryItem.Succeeded = true 即是在任务完成之后需要赋值在此 3)如果你需要增加一些信息到调度服务执行历史的话,你需要调用AddLogNode()方法 4)必须捕捉错误,如果调度服务出现异常的话 代码实现如下: 一旦这个自定义类被编译之后,只要在DNN的调度列表添加进去了,该调度服务就可以被执行并实现其调度功能。 注意:上边程序注释标有“REQUIRED”的部分为必须实现项,如此该调度程序才能被统一处理和正确执行。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |