2010-05-30 5 views
7

Von dem, was ich erforscht habe, ist es nicht möglich, die Zeitzone eines Threads zu ändern. Also meine Frage ist warum können Sie nicht?Warum ändert sich die Zeitzone nicht, wenn ich die CurrentCulture einstelle?

Ich hätte gedacht, Wechsel der Anwendung Kultur in ein bestimmtes Land würde auch dies wechseln, scheint wie erwartet Verhalten IMO.

bearbeiten

Nach Überarbeitung ich den Grund sehen, warum es sollte wohl nicht 1 abgebildet werden: 1 standardmäßig. Ich denke jedoch, dass es ein nettes Feature wäre, die Zeitzone pro Thread zu ändern.

+0

+1 Für "Ich denke immer noch, es wäre ein nettes Feature, um die Zeitzone pro Thread ändern zu können" –

Antwort

10

Sie sind kein 1: 1, also sind sie nicht wirklich verbunden. Wenn Sie die aktuelle Kultur auf en-US setzen, welche Zeitzone ist das? :)

Mehrere Länder haben mehr als 1 Zeitzone, also hat die Einstellung der Kultur (which is not country specific either for that matter) nicht wirklich viel mit der Timzone zu tun.

+0

+1 Guter Punkt! Ich habe nie so darüber nachgedacht. Wäre es nicht eine gute Idee, dies für diejenigen zu tun, die * nicht * mehrere Zeitzonen haben? – James

+1

@James - Nope :) Sie sollten immer für * konsistentes * Verhalten in einer API gehen, anstatt "dies * in * einigen * Fällen * wenn * Sie können" zu tun, die nach Problemen und Helpdesk-Anrufen fragen. Vorhersehbar> So viel wie möglich tun –

+0

Ich wäre nett gewesen, wenn die CurrentCulture eine Überladung gehabt hätte, die die Timezone-ID aber angenommen hätte :) – James

4

Kultur ist eine Sache, Zeitzone ist eine andere. Angenommen, Sie sind ein südafrikanischer Bürger, der in New York, USA, arbeitet. Natürlich möchten Sie, dass Ihre Zeitzone EST (GMT -5) ist, da Sie sind; Wenn Sie jedoch Ihre Kultur auf "af-ZA" setzen, wird Ihre Zeitzone automatisch auf GMT +2 umgestellt.

+0

Ja nach der Überarbeitung merke ich, dass sie wahrscheinlich nicht standardmäßig zugeordnet werden sollten. Allerdings wäre es schön, wenn Sie auch die Zeitzone des Threads einstellen könnten. – James

+0

@James: Das wäre in der Tat nett. Es gibt jedoch sicherlich andere Möglichkeiten, dieses Problem anzugehen. Kann Ihre Anwendung beispielsweise ihren eigenen Offset zur UTC beibehalten, der während der Laufzeit geändert werden kann, und diesen Offset überall dort verwenden, wo die Zeit benötigt wird? –

+0

Im Moment habe ich eine Lösung und mache die Konvertierungen im laufenden Betrieb. Ich dachte nur, es wäre einfacher, wenn ich die Zeitzone pro Thread ändern und die Konvertierungen komplett eliminieren könnte. – James

Verwandte Themen