TimeZoneInfo.ClearCachedData Yöntem

Tanım

Önbelleğe alınan saat dilimi verilerini temizler.

public:
 static void ClearCachedData();
public static void ClearCachedData();
static member ClearCachedData : unit -> unit
Public Shared Sub ClearCachedData ()

Açıklamalar

Önbelleğe alınan saat dilimi verileri, yerel saat dilimi ve Eşgüdümlü Evrensel Saat (UTC) dilimindeki verileri içerir.

Uygulamanın saat dilimi bilgileri önbelleğine ayrılmış belleği azaltmak veya yerel sistemin saat diliminin değiştiğini yansıtmak için yöntemini çağırabilirsiniz ClearCachedData .

Yerel ve UTC saat dilimlerine yönelik başvuruların depolanması önerilmez. yöntemine yapılan çağrıdan ClearCachedData sonra, bu nesne değişkenleri artık veya TimeZoneInfoöğesine TimeZoneInfo.Local başvurmayan tanımlanmamış TimeZoneInfo.Utc nesneler olacaktır. Örneğin, aşağıdaki kodda, değişkeni artık değerine eşit TimeZoneInfo.ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)kabul edilmediğinden yöntemine ArgumentException yapılan ikinci çağrı local bir TimeZoneInfo.Local oluşturur.

TimeZoneInfo cst = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time");
TimeZoneInfo local = TimeZoneInfo.Local;
Console.WriteLine(TimeZoneInfo.ConvertTime(DateTime.Now, local, cst));

TimeZoneInfo.ClearCachedData();
try
{
   Console.WriteLine(TimeZoneInfo.ConvertTime(DateTime.Now, local, cst));
}
catch (ArgumentException e)
{
   Console.WriteLine(e.GetType().Name + "\n   " + e.Message);
}
open System

let cst = TimeZoneInfo.FindSystemTimeZoneById "Central Standard Time"
let local = TimeZoneInfo.Local
printfn $"{TimeZoneInfo.ConvertTime(DateTime.Now, local, cst)}"

TimeZoneInfo.ClearCachedData()
try
   printfn $"{TimeZoneInfo.ConvertTime(DateTime.Now, local, cst)}"
with :? ArgumentException as e ->
   printfn $"{e.GetType().Name}\n   {e.Message}"
Dim cst As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time")
Dim local As TimeZoneInfo = TimeZoneInfo.Local
Console.WriteLine(TimeZoneInfo.ConvertTime(Date.Now, local, cst))

TimeZoneInfo.ClearCachedData()
Try
   Console.WriteLine(TimeZoneInfo.ConvertTime(Date.Now, local, cst))
Catch e As ArgumentException
   Console.WriteLine(e.GetType().Name & vbCrLf & "   " & e.Message)
End Try

Şunlara uygulanır