protected void Application_Start(object sender, EventArgs e)
        {
            System.Timers.Timer myTimer = new System.Timers.Timer(60000);
            myTimer.Elapsed += new ElapsedEventHandler(TimeEvent);
            myTimer.Enabled = true;
            myTimer.AutoReset = true;
        }定时器事件
        private void TimeEvent(object source, ElapsedEventArgs e)
        {
            //2:10 生成Sitemap
            if (DateTime.Now.ToShortTimeString() == "2:10")
            {
                //
            }            //24:00生成新一天网站的流量
            if (DateTime.Now.ToShortTimeString() == "24:00")
            {
                //
            }
        }今天早上跑来看,定时器事件里面的代码段都没有被执行
请问怎么回事呢?分不多,高手指教!

解决方案 »

  1.   

    myTimer.AutoReset = true; 
    +++++
    myTimer.Start()
      

  2.   

    System.Timers.Timer myTimer = new System.Timers.Timer(60000); 定义到方法外
      

  3.   

    试试..看这样能跑不? static System.Timers.Timer myTimer;
     private long TimerInterval = 60000;
    protected void Application_Start(object sender, EventArgs e) 

        if (myTimer == null)
        {
    myTimer = new Timer(new TimerCallback(TimeEvent), Context, TimerInterval, TimerInterval);
        }
    } protected void Application_End(object sender, EventArgs e)
    {
        if (myTimer != null)
        {
    myTimer.Dispose();
        }
        myTimer = null;
    }private void TimeEvent(object sender)
    {
        HttpContext context = (HttpContext)sender;
        try
        {
    myTimer.Change(System.Threading.Timeout.Infinite, TimerInterval); //2:10 生成Sitemap 
            if (DateTime.Now.ToShortTimeString() == "2:10") 
            { 
      // 
            }         //24:00生成新一天网站的流量 
            if (DateTime.Now.ToShortTimeString() == "24:00") 
            { 
       // 
            }     }
        finally
        {
    myTimer.Change(TimerInterval, TimerInterval);
        }
    }