Gibt es eine generische TimeZoneInfo für Mitteleuropa?

8

Gibt es eine generische TimeZoneInfo für Mitteleuropa, die sowohl CET als auch CEST in einem berücksichtigt?

Ich habe eine App, die Folgendes macht:

%Vor%

Das Problem ist, dass dies das falsche utcDate zurückgibt, da BaseUtcOffset +1 statt +2 ist. Es scheint, dass CET auch DST hat und abhängig von der Jahreszeit +1 oder +2 ist.

    
Jonas Stawski 04.04.2012, 21:08
quelle

2 Antworten

5

Zunächst möchte ich Mgnoonans Antwort, Noda Time zu benutzen, applaudieren :) Aber wenn du dich weniger abenteuerlustig fühlst ...

Sie verwenden bereits die richtige Zeitzone - aber Sie sollten nicht verwenden BaseUtcOffset was dokumentiert ist um nicht über DST zu sprechen:

  

Ruft den Zeitunterschied zwischen der Standardzeit der aktuellen Zeitzone und der koordinierten Weltzeit (UTC) ab.

Es kann unmöglich sein, DST zu berücksichtigen, wenn Sie es nicht als DateTime bereitstellen, um den Offset für:)

zu holen

Wenn someDate ein DateTime ist, könnten Sie Folgendes verwenden:

%Vor%

Oder einfach ConvertTimeToUtc :

%Vor%

Beachten Sie, dass Sie herausfinden sollten, was Sie tun möchten, wenn Ihre Ortszeit aufgrund eines DST-Übergangs doppelt auftritt oder überhaupt nicht auftritt.

    
Jon Skeet 04.04.2012, 21:21
quelle
4

Vielleicht kann Noda Time Ihnen helfen?

    
mgnoonan 04.04.2012 21:11
quelle

Tags und Links