2009-06-18 14 views

Répondre

14

Essayez quelque chose comme ça (régler le CultureInfo et DateTimeStyles appropriée):

DateTime.TryParseExact 
    ("1999", 
    "yyyy", 
    CultureInfo.InvariantCulture, 
    DateTimeStyles.None, 
    out dTransactionDate) 
+0

Cela a fonctionné. Merci!!! – Geo

+0

Pas de problème - heureux d'aider! –

2

"1999" est pas une date, il est une année essayer 1/1/1999

+0

Merci, c'est ce que je pensais! – Geo

4

Que diriez-vous .. .

DateTime dTransactionDate = new DateTime(); 
if (DateTime.TryParseExact(sTransactionDate, "yyyy", 
    CultureInfo.InvariantCulture, DateTimeStyles.None, out dTransactionDate)) 
{ 
    // Happy 
} 
else 
{ 
    // Sad 
} 

... ou même ...

DateTime dTransactionDate = new DateTime(int.Parse(sTransactionDate), 1, 1); 
// Happy 
0

Vérifiez également sur un calendrier système que la date que vous tentez d'analyser existait. Tout comme vous trouverez "29/02/1949" va également retourner faux parce qu'il n'a jamais existé sur le calendrier.