当前位置:主页   - 电脑 - 网站开发 - ASP.Net
DNN调度管理解析(二)-----自定义调度任务
来源:网络   作者:   更新时间:2012-03-10
收藏此页】    【字号    】    【打印】    【关闭

  在前面提到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调度管理解析(二)-----自定义调度任务

DNN调度管理解析(二)-----自定义调度任务

DNN调度管理解析(二)-----自定义调度任务

  一旦这个自定义类被编译之后,只要在DNN的调度列表添加进去了,该调度服务

  就可以被执行并实现其调度功能。

  注意:上边程序注释标有“REQUIRED”的部分为必须实现项,如此该调度程序

  才能被统一处理和正确执行。

其它资源
来源声明

版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明