我想将"Asia/Singapore"时区转换为"America/Virgin"时区。
但是FindSystemTimeZoneById
不包含在windows phone 7 sdk中。是否有办法将一个时区转换为另一个时区?
我不能编写自定义时区转换器,因为我不知道夏令时的时区。
在WP7 SDK中只包含TimeZoneInfo.Local
和TimeZoneInfo.Utc
要做到这一点并不容易,Silverlight和Windows Phone 7的Silverlight都不支持时区。要执行此转换,您必须获取tz数据库的副本并自己执行。
我建议用UTC存储所有日期,然后用UTC或当地时间显示。支持任意时区太棘手了!
我不确定,但您可以尝试以下解决方案
TimeSpan ts = DateTime.Now - DateTime.UtcNow;
var systemTimeZone = Math.Round(ts.TotalHours, 1); // this will gie time difference in double
var systemTimeZoneText = DateTime.UtcNow.AddHours(systemTimeZone).ToString("hh:mm tt"); // this will give result as 08:53 AM