TimeZone.CurrentTimeZone替代方案

时间:2014-01-22 23:00:18

标签: c# asp.net .net mono unity3d

我正在使用TimeZone.CurrentTimeZone来获取用户与UTC的时间偏移,如下所示:

TimeZone zone = TimeZone.CurrentTimeZone;
TimeSpan offset = zone.GetUtcOffset(DateTime.Now);
return offset.Hours*60+offset.Minutes;

当我为Android,iOS,Blackberry构建时,这是有效的,但在WM8上,我收到以下构建错误:

错误:'System.TimeZone'不存在于目标框架中。我知道目标框架是ASP.NET 2.0的一个子集

有人可以提出另一种获得UTC偏移的方法吗?

2 个答案:

答案 0 :(得分:3)

.NET for Windows Store应用程序支持

TimeZoneInfo and its GetUtcOffset(DateTime)

所以你可以这么做:

TimeSpan delta = TimeZoneInfo.Local.GetUtcOffset();
double offset = delta.TotalMinutes;

答案 1 :(得分:0)

在这里找到答案:

UTC offset in minutes

不是接受的答案,但是:

 (DateTime.UtcNow - DateTime.Now).TotalMinutes;