2011-12-13 3 views
2

WebサービスではDatetime.parseメソッドを使用して、xmlのデータをDateTime形式に変換します。これは、個別に日付と時刻の文字列を解析し、このように一緒にそれを追加します - コードは、数時間、先週以外は正常に動作してDateTime.Parse error

DateTime.Parse(Date_string).add(TimeSpan.Parse(Time_string)). 

。時間は実際の時間よりも12時間早く表示されていました。たとえば、01/01/2011 10:00:00は、01/01/2011 22:00:00と解析されます。その時間中のリクエストのほとんどは、正確に処理されたものの、実際の時刻から12時間遅れてdatetime値で処理されました。それは今はうまくいっていて、それ以降はそれを見ていない。

誰もこのような問題を見たことがありますか?

+2

言語、フレームワークなどを指定する追加情報を追加してください – SundayMonday

+0

コードはC#、.net framework 2.0で書かれています – user1096778

答えて

1

「先週数時間を除いてコードは正常に機能していました」とは言っていましたが、その日時やタイムゾーンを正確に指定していませんでした。

TimeSpan.Parseを使用しないでください。 TimeSpanは、hh:mm:ssのように見えますが、時刻を表すものではありません。 TimeSpanは、固定された時間DURATIONを表します。

あなたは本当にのような、解析する前にそれらを一緒に参加し、個別の日付と時刻の文字列を与えられている場合:あなたはまた、あなたが送信されている文字列のタイムゾーンへの影響を認識しておく必要があり

DateTime dt = DateTime.Parse(date_string + " " + time_string); 

参照してください。詳細についてはDateTime.ParseのMSDN記事を参照してください。

関連する問題