不同时区的营业时间

时间:2012-12-18 20:21:10

标签: sql c#-4.0 sql-server-2008-r2 timezone

我在这里发布了一个类似的问题:https://stackoverflow.com/questions/13923598/department-hours-of-operation-for-different-time-zones-in-sql-server

我想我在帖子中添加了太多信息:)

我要做的是在不同时区显示营业时间。我很难搞清楚如何在每个其他时区显示周一至周五:630AM到630PM(UTC -07:00亚利桑那州)之类的东西。我将达到一个点(在另一个时区)星期一不再是星期一......我似乎无法弄清楚如何识别变化。

如何将天数列表(星期一,星期二等)和时间段转换为其他所有时区并找到正确的使用日期?

1 个答案:

答案 0 :(得分:1)

时区都是相对的。澳大利亚东部标准时间为UTC + 10,东部夏令时为UTC + 11。美国东部标准时间为UTC-5,东部夏令时为UTC-4。从2012年12月21日09:00开始澳大利亚EDT到美国东部时间只是DATEADD(h, -16, '09:00 21 Dec 2012')。唯一真正的诀窍是知道每个区域的夏令时开始和停止以及它适用的法术(例如在昆士兰州没有观察到夏令时)。

谷歌搜索时区将为您提供确定相对于世界时(UTC)的位置所需的信息。

System.Globilization命名空间包含您可能需要的所有内容。 datetime类也有很多方法。