web-dev-qa-db-ja.com

DateTime.Now.AddDays(-1)は正確に24時間前の日時を取得しますが、特定の時間の昨日の時刻を取得するにはどうすればよいですか?

Datetime.Nowでなんとかして時間を指定したいので、たとえば、

DateTime.Now.AddDays(-1);

正確には24時間前の昨日の日付を取得しますが、特定の時間、たとえば午後5時の昨日の日付を取得したいと思います。

StackOverflowでこれに関連して役立つものを見つけることができません、何か提案はありますか?

7
user3668266

使用する:

DateTime.Now.Date.AddDays(-1).AddHours(17);
15
chaliasos

TimeSpanのインスタンスを作成し、DateTime.Nowで削除/追加できます。

OR

DateTime dt = DateTime.Now.AddDays(-1);

DateTime newdt = New DateTime(dt.Year, dt.Month, dt.Day, 17, 0, 0);
8
Nikhil Agrawal