KORRIGERA: Förfallodatum tid problem när du infogar objekt med hjälp av metoden ”Cache.Insert” i.NET Framework-4.7

Symptom

Anta att du har Microsoft.NET Framework-4.7 installerat på en dator. När du försöker infoga objekt i Cache-objekt med hjälp av Cache.Insert (sträng, objekt, CacheDependency, DateTime, TimeSpan) metod överbelastning, märker du kanske att infogade objekt i cachen upphör att gälla mycket tidigare eller senare än det aktuella DateTime (förfallotid).

Orsak

Den interna implementeringen av System.Web.Caching.Cache använder UTC-tid (Coordinated Universal Time) tidsstämpel för absolut förfallodatum. Men detta särskilt Cache.Insert (sträng, objekt, CacheDependecy, DateTime, TimeSpan) Infoga överbelastning inte gör att om förfallotiden konverteras till UTC. Förfallodatum för objekt som har infogats i Cache-objekt med hjälp av denna överbelastning uppstår därför tidigare eller senare än förväntat, beroende på datorn tidszon skillnaden från Greenwich Mean Time (GMT).

Temporär lösning

Tillfällig lösning på problemet är att använda metoden Cache.Add eller en annan metod för Cache.Insert överbelastning.

Lösning

Det här problemet kommer att åtgärdas i nästa version av.NET Framework och kommer också att finnas i nästa snabbkorrigeringen för.NET Framework 4.7.

Status

Microsoft har bekräftat att detta är ett problem i Microsoft-produkterna som nämns i avsnittet ”gäller”.

Behöver du mer hjälp?

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Microsoft Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×