I am trying to get the Timezone of the device (windows phone). I used this class and the property BaseUtcOffset. I live In Jordan, and it was suppose to give me +3 hours, but instead it gave me +2. i think its the daylight saving time, but i have no idea how to use it, any ideas?

var x = TimeZoneInfo.Local.BaseUtcOffset;  // x.Hours = 2

the correct timezone from timeanddate.com

有帮助吗?

解决方案

You should use GetUtcOffset().

The BaseUtcOffset property returns the difference between UTC and the time zone's standard time; the GetUtcOffset method returns the difference between UTC and the time zone's time at a particular point in time.

其他提示

That's the right response. The timezone is 2 hours ahead of UTC. Local time is 3 hours ahead of UTC.

You might want to look at GetUtcOffset() or IsDaylightSavingsTime().

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top