我在数据库中保存了一个utc日期时间,我必须以用户国家/地区设置的当地时间显示日期时间值。
有多种方式从 utc datetime 获取本地日期时间:
var dateTimeLocal = TimeZone.CurrentTimeZone.ToLocalTime(dateTimeUtc);
var dateTimeLocal = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, TimeZoneInfo.FindSystemTimeZoneById("W. Europe Standard Time"));
var dateTimeLocal = dateTimeUtc.ToLocalTime())
似乎大部分时间都有一个时区来获取本地日期,因为时区确定了以当地日期时间为单位的偏移量。
当我有user.country = "SE"
(瑞典)时,您如何以编程方式确定从utc日期时间转换正确的本地日期时间的时区?
或者将CurrentThread Culture / UiCulture设置为“sv-SE”并且.NET框架自动设置时区是否足够?