[英]how do I find the UTC offset from the TimeZoneID?
我们使用以下内置的.net方法构建了一个时区下拉列表:“
foreach (TimeZoneInfo timeZone in timeZones)
{
SelectListItem li = new SelectListItem();
li.Value = timeZone.Id;
li.Text = timeZone.DisplayName;
if (website.TimeZone == timeZone.Id)
{
li.Selected = true;
}
adminWebsiteVM.TimeZoneList.Add(li);
}
然后我们在数据库中存储timeZone.Id(这是一个字符串)。 我选择存储ID而不是偏移,因为偏移随夏令时变化。
我的问题如何在以后使用timeZone.Id属性获取UTC偏移量? 我看不到任何允许这样的事情的方法。
此方法的示例代码将执行您想要的所有操作。 我可能会用一些简短的例子进行编辑,但我认为msdn就足够了。
基本上你可以使用:
TimeZoneInfo timeZone = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time");
TimeSpan offset = timeZone.GetUtcOffset(DateTime time);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.