您的位置:首页 > 数据库

.net2.0WEB时定时执行任务解决方案收藏

2009-02-26 23:53 489 查看
在WEB开发时,定时执行某任务有了新答案 

忘记说了这是在Global.asax处理的


<%@ 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>



 

 


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息