FluentScheduler定时任务



版权声明:本文为CSDN博主「LinCyj」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kungc1/article/details/106409619/

在.Net中做定时任务中,我用到一个简单的框架FluentScheduler框架。这个框架可以让我们做一些定时的任务,如在启动时检查未来多少天的任务等等。这个框架是开源的,下载地址:https://github.com/fluentscheduler/FluentScheduler

首先可以通过VS2015这个开发工具中的NuGet管理器来引用即可。在项目引用上,右键管理NuGet程序包,输入FluentScheduler搜索,点击下载即可。

先在项目的Global.asax页面里添加初始化定时任务的代码,要在项目一开时初始化才行,这样项目一加载就开始执行检查。 

接下来就创建一个类来存放定时任务的代码,然后再写定时的代码。FluentScheduler框架提供了多种定时任务的方法,我这里时通过每天的定时来检查任务的。先创建你要执行定时的任务方法,该方法要调用IJob,然后再调用定时的方法。启动时执行一次,然后每天再执行一次

Schedule.ToRunNow().AndEvery(1).Days().At(0,0) 这代码中,ToRunNow()是每次启动都会执行,AndEvery(1).Days是每一天都会执行检查,At(时,分)这就是定期检查的代码,当然用法不止这一种的,还有上面的几种。执行成功后,会在输出页面上显示出结果

Global.asax文件是什么

https://wenku.baidu.com/view/7da87bbb7375a417876f8f30.html

Global.asax文件,有时候叫做ASP.NET应用程序文件,提供了
一种在一个中心位置响应应用程序级或模块级事件的方法。你可以使
用这个文件实现应用程序安全性以及其它一.些任务。下面让我们详细
看一下如何在应用程序开发工作中使用这个文件。

Global.asax位于应用程序根目录下。虽然Visual Studio .NE
T会自动插入这个文件到所有的ASP.NET 项目中,但是它实际上
是一个可选文件。删除它不会出问题一-当然是在你没有使用它的情
况下。.asax 文件扩展名指出它是一个应用程序文件,而不是一个
使用aspx的ASP.NET文 件。

Global.asax文件被配置为任何(通过URL的)直接HTTP
请求都被自动拒绝,所以用户不能下载或查看其内容。ASP.NET页
面框架能够自动识别出对Global.asax文件所做的任何更改。在G
lobal.asax被更改后ASP.NET页面框架会重新启动应用程序,包
括关闭所有的浏览器会话,去除所有状态信息,并重新启动应用程序
域。

Global.asax文件继承自HttpApplication类,它维护一个Htt
pApplication对象池,并在需要时将对象池中的对象分配给应用程
序。Global.asax 文件包含以下事件:

Application_ Init: 在应用程序被实例化或第一次被调用时,
该事件被触发。对于所有的HttpApplication对象实例,它都会被
调用。

Application_ Disposed: 在应用程序被销毁之前触发。这
是清除以前所用资源的理想位置。