2010-04-30 14 views
11

Ho visto molte informazioni su come sottrarre un datetime dall'altra e come aggiungere anni a un datetime. ma il seguente mi sta dando mal di testa ....Sottrai 1 anno dal datetime

Quando un utente inserisce un record, un campo nascosto chiamato subdate con un valore di datetime.now viene aggiunto al db.

Ho quindi bisogno di avere una pagina 'vecchi record' che elenca tutte le voci che hanno più di 1 anno di vita e speravo di usare qualcosa (ma usando il metodo di sottrazione) simile a;

(DateTime.Now.AddYears(1)) 

ma non sono disponibili Sottratti? Perché?

Per favore, puoi farmi sapere come ottengo lo stesso risultato?

risposta

52
DateTime.Now.AddYears(-1) 

Dal documentation:

Un certo numero di anni. Il parametro del valore può essere negativo o positivo.

+1

è sempre le cose semplici :) – Phil

+0

Credetelo: è semplicemente questo. Una soluzione semplice per un semplice problema ... il sogno di un programmatore. –

+1

Semplifica anche i controlli di età (anche se non si ottiene un calcolo dell'età), perché è possibile testare DateTime.Now.AddYears (-18)> birthDate, ad esempio. – James

Problemi correlati