asp.net 定时间点执行任务的简易解决办法_asp.net教程-查字典教程网
asp.net 定时间点执行任务的简易解决办法
asp.net 定时间点执行任务的简易解决办法
发布时间:2016-12-29 来源:查字典编辑
摘要:比如每天凌晨七点的时候email发送一次报表。这里首先想到的就是利用Global.asax文件来实现,以下Global文件的内容。复制代码代...

比如每天凌晨七点的时候email发送一次报表。

这里首先想到的就是利用 Global.asax 文件来实现, 以下Global文件的内容。

复制代码 代码如下:

<%@ Application Language="C#" %>

<%@ Import Namespace="System.Threading" %>

<script runat="server">

//这里使用静态保持对这处Timer实例的引用,以免GC

private static System.Threading.Timer timer = null;

protected void Application_Start(object sender, EventArgs e) {

//计算现在到目标时间要过的时间段。

DateTime LuckTime = DateTime.Now.Date.Add(new TimeSpan(7, 0, 0));

TimeSpan span = LuckTime - DateTime.Now;

if (span < TimeSpan.Zero) {

span = LuckTime.AddDays(1d) - DateTime.Now;

}

//按需传递的状态或者对象。

object state = new object();

//定义计时器

timer = new System.Threading.Timer(

new TimerCallback(CertainTask), state,

span, TimeSpan.FromTicks(TimeSpan.TicksPerDay));

}

protected void Application_End(object sender, EventArgs e) {

//结束时记得释放

if (timer != null) { timer.Dispose(); }

}

//这里是指定时间执行的代码,必须是静态的。

private static void CertainTask(object state) {

//这里写你的任务逻辑

}

</script>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新asp.net教程学习
    热门asp.net教程学习
    编程开发子分类