网络编程 
首页 > 网络编程 > 浏览文章

asp.net 定时间点执行任务的简易解决办法

(编辑:jimmy 日期: 2026/4/21 浏览:3 次 )
比如每天凌晨七点的时候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 长文章通过设定的行数分页
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap