Мне нужно вычислить количество дней между двумя датами, используя NodaTime, и сделать это в часовом поясе.Как получить количество дней между двумя датами в nodatime
Конечное время - это дата, основанная на предполагаемом времени полуночи в конце дня. Эта дата находится в часовом поясе.
Время начала - это текущее время, но я передаю его в функцию, чтобы функция проверялась.
Я пробовал использовать Период, который кажется очевидным ответом, но Период слишком гранулирован на одном конце (когда мы находимся в конце дня) и не достаточно гранулирован, когда мы находимся на расстоянии более 1 месяца.
Так что если сейчас 9 июля, 17:45 в Америке/Торонто, а время окончания - 1 сентября, 00:00:00, то я хотел бы иметь возможность рассчитать 54 дня. (при условии, что я правильно подсчитал количество дней в календаре :):
Я полагал, что мне придется самому справляться с проблемой суточного дня, но это меня удивило, когда мне нужно было выяснить, как обращаться с большим, чем месячная проблема.
Есть ли очевидный способ получить количество дней между двумя временами от NodaTime? Я имею это до трех строк кода, используя классы DateTime и TimezoneInfo .Net, но я хочу перейти в NodaTime по всем причинам, указанным на сайте.
Благодаря
Следует отметить, что если вы спросите дни и есть один неполный день, вы получите период со всеми нулями. Другие значения, например, часы не заполняются. –
Вы всегда можете запросить период с единицами времени + дни, если последняя часть является проблемой для вас. –
Ах, я могу или PeriodUnits. В этом есть смысл. Благодарю. –