C# british summer time (BST) timezone abbreviation

后端 未结 3 1403
情歌与酒
情歌与酒 2021-01-07 22:04

I need to display a label with the current time zone abbreviation. My pc\'s timezone is currently set to \"(GMT) Greenwich Mean Time : Dublin, Edinburgh, Lisbon, London\".

3条回答
  •  时光说笑
    2021-01-07 22:35

    The TimeZoneInfo class referrers to "British Summer Time" as "GMT Daylight Time", so no it is not possible. If Microsoft were to store it as "BST" it would be in the DaylightName property.

    Whilst following the development of the TimeZoneInfo class on the BCL blog many years ago, I saw no explanation behind how they chose the values for DaylightName. If I were to guess it would be because this is for a "Time Zone" and not a particular city.

    It appears that the public-domain tzdatabase, which is considered to be more complete than Microsoft's time zone database, does display BST for London (source). This is because Cities are included in this dataset, not just the Time Zones. There is a Project called Noda Time that brings the tzdatabase to .Net that is now avaialble.

提交回复
热议问题