Ich erhalte vom Server native (C++) Anwendung eine FILETIME-Struktur im UTC-Format. Auf der verwalteten (C#) Client-Seite muss ich sie als Client(!)-Ortszeit anzeigen. Benötige ich zusammen mit der FILETIME-Übertragung Informationen über die Zeitzone des Servers, um dies zu erreichen? Oder sind solche Informationen bereits in FILETIME im UTC-Format enthalten?
Antworten
Zu viele Anzeigen?
dknaack
Punkte
58366
Beschreibung
Sie können eine UTC-Datumszeit in eine lokale Zeit umwandeln, indem Sie TimeZoneInfo
Muster
TimeZoneInfo.ConvertTimeFromUtc(YourDateTime, TimeZoneInfo.Local);
Sie können eine UTC DateTime in eine beliebige Zeitzone konvertieren, wenn Sie den Namen kennen. Zum Beispiel.
TimeZoneInfo.ConvertTimeFromUtc(YourDateTime,
TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time"));
Mehr Informationen
Sreenath Plakkat
Punkte
1735
create a class
public class TimeConverter
{
public static DateTime ConvertToLocalTime(DateTime utcTime, string timeZoneId)
{
if (string.IsNullOrEmpty(timeZoneId))
{
return utcTime;
}
return TimeZoneInfo.ConvertTimeBySystemTimeZoneId(utcTime, timeZoneId);
}
}
In controller use TimeConverter
TimeConverter.ConvertToLocalTime(Date, yourTimeZone));
Rubarb
Punkte
55