2011-06-27 7 views
-1

2つのdatetime変数の合計時間を取得するにはどうすればよいですか?2つのdatetime変数を減算する

date1=1/1/2011 12:00:00 

date2=1/3/2011 13:00:00 
datetime date1 ; 

datetime date2; 

int hours=(date1.date2).hours; 

出力が "1" であるが、私は49hours

おかげ

答えて

8

利用TotalHoursの代わりHoursすなわち2つの日付の間の合計時間の差をつけたいです。結果はdoubleです。intにキャストすると、全体の数字は時間になります。 Hoursのためのドキュメントから

を(...結果はしかし否定的であれば、あなたが何をしたいの動作確認):

プロパティ値:現在のTimeSpan構造体の時間のコンポーネント。 23

て-23からの戻り値の範囲は、あなたが時間コンポーネントを望んでいない - あなたが全体の時間スパンをしたい、時間で表しました。それは完全に異なるです:データベースのdatetime型の値Jon.In

+0

おかげで、私は24時間形式にこれを変換することができますか私はそれを –

+1

@saurabhを変換せずに、正しい結果を得るでしょうかAM PM形式であります質問 - データを適切に取得して開始すること。それを文字列として取り出すべきではありませんが、コードにアクセスするために使用されたコードは見当たりません。データベースプロバイダーに文字列の代わりに 'DateTime'を与える方法を試すことができない場合、新しい質問を始めることをお勧めします。 –

4
int hours = (int) (date2 - date1).TotalHours; 
2
 DateTime date1 = new DateTime(2011, 1, 1, 12, 0, 0); 
     DateTime date2 = new DateTime(2011, 1, 3, 13, 0, 0); 
     TimeSpan ts = date2 - date1; 

     double hours = ts.TotalHours; 
関連する問題