У меня есть код:
int MonthNow = System.DateTime.Now.Month;
int YearNow = System.DateTime.Now.Year;
int DayNow = System.DateTime.Now.Day;
Как я могу получить вчера и завтра день, месяц и год на C #?
Конечно, я могу просто написать:
DayTommorow = DayNow +1;
но может случиться так, что завтра другой месяц или год. Есть ли в C # встроенные инструменты, чтобы узнать вчера и сегодня?
DayNow + 1
или- 1
в том, что это не работает, если это первый последний день месяца. DateTime.Now.Day - это просто целочисленное представление текущего дня.Ответы:
Вы можете найти эту информацию прямо в справочнике по API .
источник
источник
Cегодня :
DateTime.Today
Завтра :
Вчерашний день :
источник
Вы должны сделать это так, если хотите получить вчера и завтра в 00:00:00:
Просто имейте в виду, что если вы сделаете это так:
тогда вы получите текущее время минус один день, а не вчера в 00:00:00.
источник
Вы хотите
DateTime.Today.AddDays(1)
.источник
Используйте
DateTime.AddDays()
( метод DateTime.AddDays документации MSDN ).источник
Уловка состоит в том, чтобы использовать DateTime для управления датами; Используйте целые числа и строки только тогда, когда вам нужен «окончательный результат» от даты.
Например (псевдокод):
Получите «DateTime завтра = сейчас + 1»
Определите дату, день недели, день месяца - как хотите - полученной даты.
источник
Чтобы получить "местный" вчера в UTC.
источник
Остерегайтесь добавления нежелательного часового пояса к своим результатам, особенно если дата будет отправляться через веб-API. Вместо этого используйте UtcNow, чтобы не было часового пояса.
источник