2009-05-21 4 views

答えて

36

時間の長さを表すためにDateTimeを使用しないでください。TimeSpanを使用してください。あなたは日時を必要とすることを主張する場合、あなたは次のことを行うことができ

TimeSpan ts = TimeSpan.FromMinutes(90); 

:そして、このような場合には、あなたはこれを使用すると思い

DateTime dt = DateTime.Now.Date; // To get Midnight Today 
dt = dt.AddMinutes(90); // to get 90-minutes past midnight Today. 

あなたはおそらくしたくない理由DateTimeを使用するのは、Dateという概念とTimeの概念を組み合わせたものです。あなたの質問は、あなたが日付コンポーネントを無視することを計画していることを示唆しているので、仕事に適切なツールを使用するために、TimeSpanを提案します。

+0

しかし、私は本当にそれがDateTimeに変換される必要があります。さもなければ、エラーをスローします! – user95542

+0

それは残念です。ああ。私の2番目の提案を使用して、そして、あなたは行くのが良いはずです。 –

1

それとも、ただの日付と日時に時間を追加しようとしている場合:

DateTime dt = dateTime.AddMinutes(90); 
+5

DateTimeは不変です。AddMinutes()を呼び出すと、加算が行われた新しいDateTimeが返されます。戻り値を無視すると、何も起こらなかったように見えます。 –

1


あなたが使用している場合C#4VS 2010)あなたはこのスニペットを必要とする:

TimeSpan ts = TimeSpan.FromSeconds(90); 
txtDate = string.Format("Full time: {0}", new DateTime(ts.Ticks).ToString("HH:mm:ss")); 

その出力

Full time: 00:01:30 
関連する問題