Zum Beispiel möchte ich eine Funktion in bestimmten Zeitintervallen aufrufen (stündliche oder tägliche Aufgaben).Sich wiederholende Aufgaben in bestimmten Zeitintervallen?
Ich verwende bereits Timer. Aber es funktioniert, solange mein lokaler Server funktioniert. Zum Beispiel:
public static void StartYahooWeatherManager()
{
Timer t = new Timer(1000 * 60 * 60 * 6 /* 6 hours */);
t.Elapsed += new ElapsedEventHandler(WriteYahoWeatherRssItemToDb);
t.Start();
}
private static void WriteYahoWeatherRssItemToDb(object o, ElapsedEventArgs e)
{
YahooWeatherManager.InsertYahooWeatherRssItem(YahooWeatherManager.GetYahooWeatherRssItem());
}
Ich schreibe Wetterinformationen zu db, in 6 Stunden Intervallen. Das Projekt befindet sich bereits im Host. Das Timer-Ereignis funktioniert so lange, wie mein lokaler Computerserver läuft.
Frage:
Was ist falsch über meinen Code? (Oder ist es falsch, den Timer in WebProject zu verwenden?) Warum funktioniert der Timer nur, während der lokale Server funktioniert?
Was ist der beste Weg, Zeitintervall Aufgaben zu verwalten? (nicht brauchen asp.net)
Ich hoffe, ich kann das Problem erklären. Vielen Dank.
Müssen Sie das wirklich in einer ASP.NET-Anwendung tun? Haben Sie überlegt, einen Windows-Dienst zu erstellen? –
@RuiJarimba, Keine Notwendigkeit, Auch ich fragte das auch. 'Was ist der beste Weg, Zeitintervall Aufgaben zu verwalten?'. Entschuldigung, ich habe die Frage aktualisiert. –