0

いくつかのタイミング ベースのタスクを含む機能に取り組んでいます。機能を続行するには、現在の EST 時間を取得する必要があります。システム時間はユーザーごとに異なる可能性があるため、必要ありません。JavaScript または C# を使用して可能ですか?別のタイム サーバーから東部標準時を取得するか、ホストされているサーバーから時刻を取得して、東部標準時に変換できるようにします。

現在、このコード行を使用して東部標準時を取得していますが、システム時間に基づいているため、これは必要ありません。

 DateTime eastern = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.UtcNow, "Eastern Standard Time");
4

1 に答える 1

1

現在のコードは正しいように見えます - 現在の時刻を EST タイム ゾーンで返します。

あなたの場合、「今」には潜在的に4つの異なる値があり、正しい値があると思います:

  • UTC "now" - 現在は UTC タイム ゾーンです。-場所/ロケール/何かに関係なく同じ値。
  • サーバーのローカル タイム ゾーン (つまり PST) の時間 - サーバーの構成によって異なります
  • ブラウザーのユーザー タイム ゾーン (つまり、インドの 30 分のタイム ゾーン) の時間 - ユーザーごとに異なります。
  • ESTの時間 - 場所/ロケール/何かに関係なく同じ値。

UTC を既知のタイム ゾーンに変換しても安全です。

特定のマシンの時刻の精度/正確さに満足できない場合は、Network Time Protocolをサポートするサーバーから時刻を取得できますが、マシン間のクロックの同期は簡単ではないタスクであるため、必要かどうかを最初に考えてください。

于 2012-04-14T06:43:20.763 に答える