Well, monthly names can also be localized. And, perhaps, in some exotic cultures years are counted in a different way.
EDIT:
Example:
string x = "Montag, 2. April 2012"; DateTime dt1, dt2; bool r1 = DateTime.TryParseExact(x, "D", new CultureInfo("de-DE"), 0, out dt1); bool r2 = DateTime.TryParseExact(x, "D", new CultureInfo("en-US"), 0, out dt2);
( r1 == true , r2 == false ).
Or vice versa:
string y = "Monday, April 02, 2012"; DateTime dt3, dt3; bool r3 = DateTime.TryParseExact(y, "D", new CultureInfo("de-DE"), 0, out dt3); bool r4 = DateTime.TryParseExact(y, "D", new CultureInfo("en-US"), 0, out dt4);
( r3 == false , r2 == true ).
Vlad
source share