我如何知道NodaTime中城市与其时区之间的关系?

时间:2014-02-05 17:04:49

标签: .net vb.net nodatime

目前我正在使用NodaTime从国家/地区获取时区,但问题是如果某个国家/地区有多个时区。我怎么知道那个时区的城市名单? 我需要知道这两个数据之间的映射。 NodaTime可以吗?

1 个答案:

答案 0 :(得分:3)

处理此问题的正确方法如下:

  • 查找每个位置的纬度和经度。如果这些是机场,请考虑使用OurAirports.com中的数据。您可能也对OpenFlights感兴趣,但请注意,他们无论如何都会从OurAirports.com获取数据。虽然OpenFlights数据有一些时区信息,但它不够准确无法映射到真正的IANA时区标识符。

  • 拥有经度和纬度后,您可以使用one of these methods从该位置查找时区。

  • 然后您可以通过DateTimeZoneProviders.Tzdb[theTimeZoneId]

  • 将该时区标识符传递给NodaTime