ASP.NET定时执行任务

服务器端采用C#语法: 
1.在Global.asax文件中导入命名空间 
<%@ Import Namespace="System.Timers" %>

2.Global.asax文件中的Application_Start()方法内写如下代码: 
System.Timers.Timer objTimer = new Timer(); 
objTimer.Interval = 时间; //这个时间单位毫秒,比如10秒,就写10000 
objTimer.Enabled = true; 
objTimer.Elapsed += new ElapsedEventHandler(objTimer_Elapsed);

3.Global.asax文件中添加一个方法 
void objTimer_Elapsed(object sender, ElapsedEventArgs e) 

//这个方法内实现你想做的事情。 
//例如:修改Application的某一个值等等。 

以上3步则可以在指定
using System; 
using System.Timers; 
namespace 定时器ConsoleApplication1 

class Class1 
{  
 [STAThread]  
 static void Main(string[] args) 
 { 
  System.Timers.Timer aTimer = new System.Timers.Timer(); 
  aTimer.Elapsed += new ElapsedEventHandler(TimeEvent); 
  // 设置引发时间的时间间隔 此处设置为1秒(1000毫秒) 
  aTimer.Interval = 1000; 
  aTimer.Enabled = true; 
  Console.WriteLine("按回车键结束程序"); 
  Console.WriteLine(" 等待程序的执行......"); 
  Console.ReadLine(); 
 } 
 // 当时间发生的时候需要进行的逻辑处理等 
//  在这里仅仅是一种方式,可以实现这样的方式很多. 
private static void TimeEvent(object source, ElapsedEventArgs e) 
 {   
  // 得到 hour minute second 如果等于某个值就开始执行某个程序。 
  int intHour  = e.SignalTime.Hour; 
  int intMinute = e.SignalTime.Minute; 
  int intSecond = e.SignalTime.Second; 
  // 定制时间; 比如 在10:30 :00 的时候执行某个函数 
  int iHour  = 10; 
  int iMinute = 30; 
  int iSecond = 00; 
  // 设置  每秒钟的开始执行一次 
  if( intSecond == iSecond ) 
  { 
  Console.WriteLine("每秒钟的开始执行一次!"); 
  } 
  // 设置 每个小时的30分钟开始执行 
  if( intMinute == iMinute && intSecond == iSecond ) 
  { 
  Console.WriteLine("每个小时的30分钟开始执行一次!"); 
  } 
 // 设置 每天的10:30:00开始执行程序 
  if( intHour == iHour && intMinute == iMinute && intSecond == iSecond ) 
  { 
  Console.WriteLine("在每天10点30分开始执行!"); 
  } 
 } 

}

时间间隔执行这个objTimer_Elapsed()方法,即达到你要得效果

你可能感兴趣的:(asp.net)