在 .Net 中通过缩写查找时区标准名称

looking up time zone standard name by abbreviation in .Net

给定一个字符串 "EST",.net (c#) 中是否有一种方法可以在 return 中查找标准名称字符串,例如 "Eastern Standard Time"?我知道 TimeZoneInfo 对象有 StandardName 字段,但我不能仅将其与缩写相关联。

我希望在不访问外部 Web 服务的情况下严格地在 .net 中进行查找。

Given a string of "EST", is there a way in .net to look up the standard name string like "Eastern Standard Time" in return?

在 .Net Framework 中,没有。没有标准来缩写时区名称。也很难做出来。

例如CST可以表示为;

  • 中国标准时间
  • 中部标准时间(北美)
  • 中部标准时间(澳大利亚)
  • 中部夏令时(澳大利亚)(使用 3 个时区但是..)

据我所知,NodaTime both support Windows time zone and IANA/Olson time zone mapping. Also Matt Johnson created TimeZoneNames 这是为了防止时区名称和他们的本地化名称不明确。您可能想检查这些选项。