2011-09-27 11 views
4

現在、すべてのdateTimesをUTCの日付としてDBに格納しています。各ユーザーのタイムゾーンオフセットもDBに格納されます。日付を取得すると、このオフセットを使用してローカル日付に変換されます。UTC DateTimeの問題

問題は、ajax呼び出しを使用して日付を取得するときに発生します。日付(オフセットを使用して既に変換されている)は、Java Dateオブジェクトとして返されると思います。ブラウザは、クライアントコンピュータのタイムゾーンオフセットをDateオブジェクトに追加することで、Dateを混乱させることになります。これは、時間構成要素が11.59am以上である場合に必要な日よりも前にある日を引き起こしている。

私が思いつくことができる唯一の解決策は、文字列として渡すことですが、この場合はもちろん起こりません。これは私のためのlaaaastリゾートですが、私はこの問題のためのより良い解決策または回避策を見つけるのが大好きです。

+0

私たちはAJAXコールのいくつかを見ることができますか? – worc

答えて

2

あなたのブラウザは、ブラウザがネイティブの日付転送変数を持っていないと仮定して、日付を煩わせることはありません。あなたはそれをしている何かを持っています。どのようにアヤックスであなたの日々を送っていますか? Json? Jsonは数字や文字列のみを送信します。 XMLは文字列のみを送信します。

何かが送信された日付をjavascriptの日付オブジェクトに変換して、何かを見つけ出しています。

+0

これはサードパーティのコンポーネントで、日付はTelerikグリッドに表示されますが、これはおそらく原因です。途中であなたの速い返答をありがとう。私はまだこの問題とTelerikのサポートをどうしたらよいのか分からないのです。 –

+0

日付をUnixタイムスタンプ(整数)として送信できますか?それらは常にUTCであり、変換は非常に簡単です。 「日付を取得するときに、このオフセットを使用してローカル日付に変換されます。可能な最後の瞬間に表示する直前に変換を行います。 – Ariel

+0

私はasp.Net MVCを使用しています。私はビューを返す前にコントローラ内でそれらを変換します。 –