Convert DateTime from UTC to a user provided time zone with C#
例如,如果我有一个数据库列在UTC时区中保存日期/时间,那么我可以将它们读取到用C_编写的ASP.NET Web应用程序中的datetime对象中。如何将它们转换为用户提供的时区?
假设
您可以使用
1 | TimeZoneInfo.ConvertTimeFromUtc(time, userTimeZone); |
或
1 | TimeZoneInfo.ConvertTime(time, TimeZoneInfo.Utc, userTimeZone); |
您可能需要查看有关
可能也值得阅读有关在msdn上转换时区的所有内容。这比你想象的要复杂。
要在系统中获取时区列表,可以使用timezoneinfo.getSystemTimeZones()。它将为您的系统提供所有可用时区的列表。
1 | List<TimeZoneInfo> lstTZI = TimeZoneInfo.GetSystemTimeZones().ToList(); |
因为它是readOnlyCollection。现在您可以用DropDownCtrl绑定这个源。