ユーザーが選択したタイムゾーンに応じてデバイスの内部時計を同期する必要があります。 、DSTオフセットありとNodaTimeのある特定のタイムゾーンの現在の日付時刻
var currentInstant = SystemClock.Instance.GetCurrentInstant().InZone(userTimezone);
しかし、私はまた、ゾーンのDSTを有効/無効にするフラグを切り替えることができるようにする必要があります: 私は、システムクロックに対してそのゾーンの現在時刻を取得するには、次のコードを使用していますつまり、ゾーンに現在DSTが有効になっている場合、追加するオフセットを減算できるようにする必要があり、内部時計を標準オフセットでゾーン時間に設定するだけです。
私はオフセット基準(100%ではない、これはしかし正しい)が見つかりました:
currentInstant.GetZoneInterval().StandardOffset;
をしかし、私はそれを使用してゾーンの時間を取得するかどうかはわかりませんか?
DSTを有効/無効にするフラグが必要な理由は何ですか?それは決して正しいことではありません。 –
私はそれがクライアントがそれを主張しているのではないことを知っています。何回か失敗したラウンドで彼を説得した後、それは悪い考えです。彼が使用している現在のアプリケーションにはこの機能があります。 – MarkovskI
タイムゾーンは厳しいです。ほとんどの人はそれを知りません。 DSTが現在使用されている世界の場所を教えてもらえるかどうかクライアントに尋ねますが、一部の人はそれを観察しないことを選択します。政府が「DSTを永続化する」と言っているシナリオをどのように処理したいのかを尋ねますが、実際にはそれらが標準時を切り替えるということです。 –