我現在有一項服務,現在我相信每10分鐘運行一次,但是我希望它每天晚上7點運行,我需要改變什麼? ...如何在特定時間運行服務?
private Timer _timer;
private DateTime _lastRun = DateTime.Now;
protected override void OnStart(string[] args)
{
_timer = new Timer(10 * 60 * 1000); // every 10 minutes??
_timer.Elapsed += new System.Timers.ElapsedEventHandler(timer_Elapsed);
}
private void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
if (_lastRun.Date < DateTime.Now.Date)
{
// stop the timer
_timer.Stop();
try
{
SmartImportService.WebService.WebServiceSoapClient test = new WebService.WebServiceSoapClient();
test.Import();
}
catch (Exception ex) { }
_lastRun = DateTime.Now;
_timer.Start();
}
}
爲什麼你使用這個服務呢?將其設置爲計劃任務。 – 2012-04-17 15:59:45
所以你採取了接受的答案在http://stackoverflow.com/questions/503564/how-might-i-schedule-ac-sharp-windows-service-to-perform-a-task-daily並將其粘貼到一個一個新的問題,而不是在下面看到最讚的答案。 – Till 2012-04-17 16:05:52
@Till多麼聰明;) – karry 2013-02-06 15:35:47