2016-10-31 3 views
-2

私はプロジェクトを構築しようとしており、の日付時刻ピッカーの2つの日付を比較しようとしています。2つの日付の違いが間違った結果を示しています

出発時刻と到着時刻です。ユーザーは出発時に5/11/2016、到着時に6/11/2016の日付を選択します。

コードは以下の通りです:

DateTime departure = dtpDeparture.Value.Date; 
DateTime arrival = dtpArrival.Value.Date; 

MessageBox.Show(departure- arrival).Days.ToString(); 

結果は次のとおりです。6576間違っている...それは1でなければなりません(差は一日だけですか)?

ありがとうございました。

+0

を見つけて、あなたはそれが時間が考慮されている場合は、正しいことができます '6.576'を、表示されていないことを確認しているしてください。 –

+1

'MessageBox.Show(departure.ToString()+" - "+ arrival.ToString())'は何を表示しますか? –

+0

@PatrickHofman私は.Value.Dateを置いて以来、私はそれほど時間がかかるべきではないと思います。 –

答えて

4

(departure - arrival).TotalDaysは常に私のために働いています。あなたの日付形式も正しいことを確認してください。あなたは5月11日から6月11日までチェックしているかもしれません。

+0

日付ピッカーのフォーマットをdd/MM/yyyyに変更しましたが、それでも同じ結果が表示されます。 –

+0

'TotalDays'を使うのは確かに正しいアプローチです。しかし、それは常に「Days」以上でなければなりません。問題は、「Days」がすでに大きすぎることです。 –

+0

ありがとうございます。その機能は正しい。私は私のビジュアルスタジオを再開し、それは働いた。これは解決されました。 –

0

たぶん、あなたは試すことができます[DateTime.Subtract()] リンクhere

関連する問題