2012-03-30 9 views
0

Ich habe die folgende Liste von Zeitzonen, die ein Benutzer auswählen kann, Mountain Standard Time ist zweimal dort für Arizona. Diese sind nicht wollen sie sehen, wenn sie wählen. Ich zog diese Liste einer Website, die alle Zeitzonen von Microsoft hatte. Ich denke, ich bin verwirrt, wenn Mountain Standard Time für die regulären Staaten und AZ aufgeführt ist.Handelt die C# -Methode TimeZoneInfo.ConvertTime mit DST?

Hawaiian Standard Time

Alaskan Standard Time

Pacific Standard Time

Mountain Standard Time

Mountain Standard Time

Central Standard Time

Zentral Ame rica Standard Time

Eastern Standard Time

US Eastern Standard Time

Meine Frage ist ich diese raten berücksichtigen nicht DST, so gehe ich davon aus ich etwas zu meiner Bekehrung hinzufügen müssen um zu überprüfen, ob sie in der Sommerzeit sind, und sie entsprechend anzupassen. Hier mache ich jetzt die Konvertierung.

TimeZoneInfo time = TimeZoneInfo.FindSystemTimeZoneById(LocationProvider.GetLocation(LocationID).TimeZone.Name); 
return TimeZoneInfo.ConvertTime(DateTime.Now, time); 
+0

Sad Geschichte zu helfen, war Pocken eine Katastrophe. http://en.wikipedia.org/wiki/Navajo_Nation#Daylight_Saving_Time –

Antwort

2

Ja, TimeZoneInfo Konten für DST, so lange wie Sie es richtig verwenden (was nicht so einfach ist, wie es sein könnte, zugegebenermaßen). Es ist nicht wirklich klar, warum Sie versuchen zu tun, was du tust, wenn ...

Ich weiß, es ist verwirrend, dass die ID tatsächlich die Standard ID für die Zeitzone ist, aber es ist immer noch ein Vollzeitzone das weiß über DST. Es ist nicht nur bedeuten "Standardzeit".

(Wenn Sie frustriert mit DateTime et al und Phantasie Noda Time für all Ihre Zeit/Datum Bedürfnisse versuchen, ich wäre glücklich :)

+0

Im Wesentlichen sind die Server in Texas, also, wenn ich etwas mit einem Zeitstempel speichere, konvertiere ich es von der Zeit auf dem Server zur lokalen Zeit des Standorts . – Jhorra

+0

@Jhorra: Tu das nicht. Speichern Sie die * UTC * -Zeit und konvertieren Sie sie nur zur lokalen Zeit für die Anzeige. Beachten Sie, dass lokale Zeiten ambivalent werden, wenn Uhren zurückgehen - * verwenden Sie sie nicht dort, wo Sie nicht müssen. –

+0

Das ist wahrscheinlich der beste Weg, aber so oder so muss ich noch die Konvertierung machen. Die Liste, die ich oben habe, hat die gleiche Zeitzone für Arizona und alle anderen Staaten auf MST. Woher weiß es, die Zeit in Arizona nicht zu konvertieren? – Jhorra