tip and trick‎ > ‎

DateTime format in .NET 4.0

posted Oct 18, 2011, 1:00 AM by mb s
Lets assume I have the DateTime pattern "dd-MMM-yyyy" in my locale.
DateTime.Now.ToString("yyyy/MM/dd") working different in 3.5 & 4.0 framework.
In 3.5, it uses the pattern given in the parameter to convert the date to string. So, the output would be "2011/11/10" and it the expected result.
But in 4.0, this would return as "2011-11-10" which is not correct. 4.0 is using the current culture's ("-") separator instead of using the pattern's separator ("/") given in the parameter. To fix it, we need to pass IFormatProvider along with the ToString function.