2010-06-07 10 views

risposta

133
var myDate = DateTime.Now; 
var newDate = myDate.AddYears(-1); 
+0

Grazie. Un'altra domanda correlata: come sottrarre la settimana? – Jango

+7

@learner: utilizzare myDate.AddDays (-7); –

+1

Bon idea signore. Merci – Jango

32
DateTime oneYearAgoToday = DateTime.Now.AddYears(-1); 

sottrazione di una settimana:

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

forse vale la pena notare che la risposta accettata può regolare la data da entrambi 365 giorni o 366 giorni a causa di anni bisestili (si ottiene la data per lo stesso giorno del mese un anno fa, ad eccezione del 29 febbraio, dove ritorna il 28 febbraio).

Nella maggior parte dei casi questo è esattamente ciò che si desidera, tuttavia se si sta trattando un anno come unità di tempo fissa (ad esempio the Julian year), è necessario sottrarre da entrambi i giorni;

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

o secondi;

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