c#web定时任务

转自:http://www.programbbs.com/doc/3003.htm 另外可参考http://developer.51cto.com/art/200909/149829.htm

想在Web中定时 处理某些任务吧?
可以在Global.asax 中定义,直接上例子:

< script runat = " server " >
    
void  Application_Start( object  sender, EventArgs e) 
    {
       
       
//  应用程序启动时
       System.Timers.Timer timer  =  new  System.Timers.Timer();
       DateTime sTime 
=  DateTime.Now;
       
int  sHour  =  sTime.Hour;
       
int  sMin  =  sTime.Minute;
       
int  sSecond  =  sTime.Second;
       
int  sHourInterval  =  15  -  sHour;
       
int  sSecondInterval  =  sHourInterval  *  60  *  60  *  1000 ;
       
// timer.Interval = 1000*5; // 5秒发送一次
       timer.Interval  =  sSecondInterval;
       
// timer.AutoReset;
       timer.Elapsed  +=  new  System.Timers.ElapsedEventHandler(timer_Elapsed);
       timer.Enabled 
=  true ;

    }
    
void  timer_Elapsed( object  sender, System.Timers.ElapsedEventArgs e)
    {
        
string  s_from  =  " fengsheng@xxx.com " ;
        
string  s_to  =  " fengsheng@xxx.com " ;
        
string  pwd  =  " 1234567 " ;
        
string  s_body  =  " test " ;
        
string  s_smtp  =  " mail.xxx.com " ;
        
int  i  =  s_from.IndexOf( " @ " );
        
string  s_subjetc  =  " test " ;
        
string  username  =  s_from.Substring( 0 , i);
        System.Net.Mail.MailAddress from 
=  new  System.Net.Mail.MailAddress(s_from);
        System.Net.Mail.MailAddress to 
=  new  System.Net.Mail.MailAddress(s_to);
        System.Net.Mail.MailMessage mailobj 
=  new  System.Net.Mail.MailMessage(from, to);
        mailobj.Subject 
=  s_subjetc;
        mailobj.Body 
=  s_body;

        mailobj.IsBodyHtml 
=  true ;
        mailobj.BodyEncoding 
=  System.Text.Encoding.GetEncoding( " GB2312 " );
        mailobj.Priority 
=  System.Net.Mail.MailPriority.High;
        System.Net.Mail.SmtpClient smtp 
=  new  System.Net.Mail.SmtpClient();
        smtp.Host 
=  s_smtp;
        smtp.UseDefaultCredentials 
=  true ;
        smtp.Credentials 
=  new  System.Net.NetworkCredential(username, pwd);
        smtp.Send(mailobj);
    }
</ script >

上面 是一个定时发邮件的小例子,建议最好是把需要启动的事项 做成 web Service 这样 应用范围会更广

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值