Как вычесть год из текущего datetime с помощью С#?
Как вычесть год из даты?
Ответ 1
var myDate = DateTime.Now;
var newDate = myDate.AddYears(-1);
Ответ 2
DateTime oneYearAgoToday = DateTime.Now.AddYears(-1);
Вычитание недели:
DateTime weekago = DateTime.Now.AddDays(-7);
Ответ 3
Возможно, стоит отметить, что принятый ответ может скорректировать дату на 365 дней или 366 дней из-за високосных лет (он получает дату в тот же день месяца год назад, за исключением 29 февраля, когда он возвращается 28 февраля).
В подавляющем большинстве случаев это именно то, что вы хотите, однако, если вы рассматриваете год как фиксированную единицу времени (например, юлианский год), тогда вам нужно будет вычесть из двух дней:
var oneFullJulianYearAgo = DateTime.Now.AddDays(-365.25);
или секунды;
var oneFullJulianYearAgo = DateTime.Now.AddSeconds(-31557600);