Asp.net定时执行程序
2012-12-13 17:00:28 来源:WEB开发网核心提示: 用Timer解决问题的思路很简单,首先设定Timer类的Interval属性(单位是毫秒),Asp.net定时执行程序,也就是时间间隔;然后在Timer的Elapsed的事件里写执行代码,每过一个设置好的Interval时间间隔,这里可以调用你程序中的其他类的方法 }}</span>
用Timer解决问题的思路很简单,首先设定Timer类的Interval属性(单位是毫秒),也就是时间间隔;然后在Timer的Elapsed的事件里写执行代码,每过一个设置好的Interval时间间隔,将执行一次Elapsed中的事件 (这和VB程序中的Timer控件基本没有区别)。
那知道了用什么类,这些代码要写在哪里呢?把代码写在Global.asax件中,在VS的项目上右键,点添加--》新建项,选“全局应用程序类”,项目中就会有Global.asax文件了。
为了表达清楚直接上代码(首先在Global.asax文件头部引入system.Timers命名控件):
<span style="font-size:18px;"> public class Global : System.Web.HttpApplication { //在网站运行时这段代码同时启动 protected void Application_Start(object sender, EventArgs e) { System.Timers.Timer objTimer = new System.Timers.Timer(); objTimer.Interval = 60*1000; //这个时间单位:毫秒 objTimer.Enabled = true; //设置Timer类的可用性 //将Timer的Elapsed事件绑定到新建立的timer对象上 objTimer.Elapsed += new ElapsedEventHandler(objTimer_Elapsed); }</span>
下面是在Timer的Elapsed事件中的代码
<span style="font-size:18px;">void objTimer_Elapsed(object sender, ElapsedEventArgs e) { string Time = DateTime.Now.ToShortTimeString();//获得当前时间 //从配置文件里获得当前设置的时间。 string OrderTime = ConfigurationManager.AppSettings["OrderFoodTime"]; /*测试数据*/ if(Time.Equals(OrderTime)) { //如果时间相等,执行你要执行的操作,这里可以调用你程序中的其他类的方法 } }</span>
这样就能达到定时执行程序的目的了。
这是用在我项目中的定时执行,在论坛里问关于定时执行的方案,也有人说用windows服务比较安全
- ››asp.net页面弄成伪静态页面
- ››Asp.net 中将汉字转换成拼音的方法
- ››ASP.NET及JS中的cookie基本用法
- ››ASP.NET获取MS SQL Server安装实例
- ››asp.net实现调用百度pai 在线翻译英文转中文
- ››ASP.NET页面选项进行提示判断
- ››Asp.net定时执行程序
- ››ASP.NET中利用DataList实现图片无缝滚动
- ››ASP.NET验证控件RequiredFieldValidator
- ››ASP.NET中使用System.Net.Mail发邮件
- ››ASP.NET中获取用户控件中控件的ID
- ››ASP.NET中FileBytes写成文件并存档
更多精彩
赞助商链接