f9inux的专栏

无声的海浪

.NET2.0 WEB时定时执行任务解决方案
<%@ Application Language="C#" %>
<%@ import Namespace="System.IO" %> 

<script runat="server">
void Application_Start(object sender, EventArgs e) 
    
...{
        
// 在应用程序启动时运行的代码

        System.Timers.Timer myTimer 
= new System.Timers.Timer(10000);
        myTimer.Elapsed 
+= new System.Timers.ElapsedEventHandler(OnTimedEvent);
        myTimer.Interval 
= 10000;
        myTimer.Enabled 
= true;
}

    
    
void Application_End(object sender, EventArgs e) 
    
...{
        
//  在应用程序关闭时运行的代码


    }

        
    
void Application_Error(object sender, EventArgs e) 
    
...
        
// 在出现未处理的错误时运行的代码


    }


    
void Session_Start(object sender, EventArgs e) 
    
...{
        
// 在新会话启动时运行的代码


    }


    
void Session_End(object sender, EventArgs e) 
    
...{
        
// 在会话结束时运行的代码。 

        
// 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为

        
// InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer 

        
// 或 SQLServer,则不会引发该事件。


    }

    
private static void OnTimedEvent(object source, System.Timers.ElapsedEventArgs e)
    
...{
        
//间隔时间执行某动作

        
        
        
//指定日志文件的目录

        
string fileLogPath = AppDomain.CurrentDomain.BaseDirectory + "SystemLog";
        string fileLogName = "SoftPrj_CN_" + DateTime.Now.ToLongDateString() + "_log.txt";
        
//定义文件信息对象

        FileInfo finfo 
= new FileInfo(fileLogPath + fileLogName);

        
//创建只写文件流

        
using (FileStream fs = finfo.OpenWrite())
        
...{
            
//根据上面创建的文件流创建写数据流

            StreamWriter strwriter 
= new StreamWriter(fs);
            
//设置写数据流的起始位置为文件流的末尾

            strwriter.BaseStream.Seek(
0, SeekOrigin.End);
            
//写入错误发生时间

            strwriter.WriteLine(
"发生时间: " + DateTime.Now.ToString());
            
//写入日志内容并换行

            
//strwriter.WriteLine("错误内容: " + message);

            strwriter.WriteLine(
"错误内容: "); 
            
//写入间隔符

            strwriter.WriteLine(
"---------------------------------------------");
            strwriter.WriteLine();
            
//清空缓冲区内容,并把缓冲区内容写入基础流

            strwriter.Flush();
            
//关闭写数据流

            strwriter.Close();
            fs.Close();
        }

}

</script>

单击在新窗口中打开图片,Ctrl+滚轮缩放图片 
阅读更多
想对作者说点什么? 我来说一句

WEB应用程序定时执行任务

2009年04月06日 33KB 下载

没有更多推荐了,返回首页

不良信息举报

.NET2.0 WEB时定时执行任务解决方案

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭