私は再発生時間スパンを設定する必要があるという状況があります(この例では、午後6時〜 )C#での義務的な日付の問題 - UtcNowが指定された時間間隔の間にあるかどうかを確認する
日付はこれに関連しません。毎日チェックすることが想定されています。
DateTime.UtcNow
を使用すると適切な時間が得られますが、正しい日が得られないため、私は頭を悩ましています。ただし、DateTime.MinValue
を使用しても現在の時刻は得られません。私は手動で日付を設定することができませんでした。それは真夜中のUTCとの間にあるかどうかを確認するには...私は...と思うが、これは現時点での私のわずかなコードで、
var start = DateTime.MinValue.Date.Add(new TimeSpan(18, 0, 0));
var end = DateTime.MinValue.Date.Add(new TimeSpan(6, 0, 0));
var timezone = TimeZone.CurrentTimeZone.GetUtcOffset(start);
var now = DateTime.UtcNow;
now.Date = DateTime.MinValue;
// is right now greater than 6pm est?
Console.WriteLine(start.TimeOfDay < now);
Console.WriteLine(end < DateTime.UtcNow);
Console.WriteLine(start.ToShortTimeString());
Console.WriteLine(DateTime.UtcNow.TimeOfDay);
Console.WriteLine(timezone.ToString());
Console.ReadLine();
now.Date = DateTime.MinValue; //エラー:読み取り専用プロパティ –
はい、日付に直接設定しようとすると機能しないという質問に記載されています。私を許して、その行はコメントアウトされているはずです。 – Ciel
6PM - 6AMはそのような日付ではないので、探しているものがわからない – V4Vendetta