Search code examples
c#datetimelocalizationazuredatetime-conversion

Convert utc to local datetime


i've got an globalization setting in the web.config like this:

<globalization culture="de-DE" uiCulture="de-DE" />

and on an average aspx page i output sth. like:

var a = DateTime.UtcNow.ToLocalTime().ToString();
var b = DateTime.UtcNow.ToString();
var c = DateTime.Now.ToLocalTime().ToString();
var d = TimeZone.CurrentTimeZone.ToLocalTime(DateTime.UtcNow).ToString();

Result: The values of a,b,c,d are ALL identical ( e.g. 01.01.2001 17:00:00 ), when i would expect the local and UTC times to be different.

What am i missing here and how can i get the correct localtime from a UTC date.. i checked other topics already, but it didn't work..


Solution

  • Microsoft Azure is set to have UTC time be the local time no matter where the data center is located. If you want to convert to a time that is local to a user's browser you will need to convert it programatically.

    Since Azure is a global service, there really is no local time per se, and to be consistent across all their global data centers, it makes sense to use a standard time.

    More information at.

    http://michaelcollier.wordpress.com/2010/05/22/hey-azure-what-time-is-it/