TimeZoneInfo.ClearCachedData Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vymaže data časového pásma uložená v mezipaměti.
public:
static void ClearCachedData();
public static void ClearCachedData ();
static member ClearCachedData : unit -> unit
Public Shared Sub ClearCachedData ()
Poznámky
Data časového pásma uložená v mezipaměti zahrnují data v místním časovém pásmu a v pásmu UTC (Coordinated Universal Time).
Můžete volat metodu ClearCachedData
, která snižuje paměť věnovanou mezipaměti informací o časovém pásmu aplikace nebo aby odrážela skutečnost, že se časové pásmo místního systému změnilo.
Ukládání odkazů na místní a časové zóny UTC se nedoporučuje. Po volání ClearCachedData
metody budou tyto proměnné objektu nedefinované TimeZoneInfo objekty, které již nejsou odkazy na TimeZoneInfo.Local nebo TimeZoneInfo.Utc. Například v následujícím kódu vyvolá druhé volání TimeZoneInfo.ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) metody, ArgumentException protože local
proměnná již není považována za TimeZoneInfo.Localrovnou .
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