Вам нужно разделить логику на две части;
- Проверьте, больше ли дата, чем дата начала,
startTime > now
- Проверьте, если дата меньше даты окончания,
endTime < now
Для диапазона дат логика должна удовлетворять обоим (с логическим И, &&
).
DateTime startTime = DateTime.Today.AddHours(9).AddMinutes(30);
DateTime endTime = DateTime.Today.AddHours(12+4);
DateTime now = DateTime.Now;
if(startTime > now && endTime < now) {
// do something
}
Если вы находитесь в часовом поясе ET, он должен работать нормально, но в противном случае вам нужно выполнить некоторые манипуляции с часовым поясом. Проверьте другие ответы.