如何从date时间减去一年?

如何使用C#从当前date时间减去一年?

var myDate = DateTime.Now; var newDate = myDate.AddYears(-1); 
 DateTime oneYearAgoToday = DateTime.Now.AddYears(-1); 

减一周:

 DateTime weekago = DateTime.Now.AddDays(-7); 

可能值得注意的是,接受的答案可能会因闰年而在365天或366天内调整date(得到的是一年前一个月的同一天的date,除了二月二十九日之后的第28天二月)。

在绝大多数情况下,这正是你想要的,但是如果你把一年当作一个固定的时间单位(例如朱利安年 ),那么你将需要从两天中减去;

  var oneFullJulianYearAgo = DateTime.Now.AddDays(-365.25); 

或秒;

  var oneFullJulianYearAgo = DateTime.Now.AddSeconds(-31557600);