Frage

Ich habe also einen Prozess, der um Mitternacht läuft und einen Start- und Endpunkt für ein Flash-Objekt festlegt.Dies muss nur einmal am Tag ausgeführt werden, daher speichere ich die Ergebnismenge natürlich zwischen.

Das Problem, auf das ich stoße, besteht jedoch darin, dass, wenn die Daten nach Mitternacht immer noch zwischengespeichert sind, nicht die korrektesten Daten abgerufen werden, bis der Cache abläuft.

Grundsätzlich muss der Cache um 23:59:59 Uhr ablaufen, damit er um 12:00 Uhr die richtigen Daten erhält.

Ich vermute, dass eine SQL-Cache-Abhängigkeit von der Tabelle, aus der ich die Daten ziehe, ideal wäre, aber ich habe das noch nie zuvor eingerichtet.

Gibt es eine Möglichkeit, dem Cache mitzuteilen, dass er genau um Mitternacht ein bestimmtes Element entfernen soll?

Danke Leute!

--Absoluter Ablauf---

Ich denke ich habe es:

DateTime expireWeights = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 23, 59, 59, 999);
Cache.Insert("CacheItemName", itemToCache, null, expireWeights, System.Web.Caching.Cache.NoSlidingExpiration);
War es hilfreich?

Lösung

Sie können eine absoluteExpiration Zeit auf dem Cache-Objekt festgelegt, die eine Datetime ist.

Sie können auch eine absoluteExpiration mit einem SqlCacheDependency kombinieren.

Im Hinblick auf die Frage der es nicht um die neuen Daten ziehen, wenn der Cache abläuft. Sie CacheItemRemovedCallback verdrahten kann Benachrichtigung zu erhalten, wenn es abgelaufen ist, und aktualisieren Sie den Cache zu diesem Zeitpunkt

Andere Tipps

Ich verstehe nicht, warum Sie ein Problem mit dem absoluten Ablauf haben?Sie können das genaue Datum und die Uhrzeit angeben, an dem das Element aus dem Cache abläuft.Daher fügt die folgende Codezeile „myObject“ unter dem Schlüssel „MyKey“ in den Cache ein und läuft am nächsten Tag um Mitternacht ab (unabhängig davon, wann es in den Cache gelangt).

Cache.Insert("MyKey", myObject, null, DateTime.Today.AddDays(1), TimeSpan.Zero);

Wenn Sie schauen hier unter „Zeitbasierte basierte~~POS=HEADCOMP Abhängigkeit“, zeigt es, wie sie den einzustellenden Punkt zu einer bestimmten Zeit abläuft. Ist das, was Sie suchen?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top