Ical.Net: флаг AsUtc события не обновляется правильно
Я сталкиваюсь с этой проблемой в Ical.Net версии =4.0.1.0 и ниже. Когда мы получаем "GMT-0500" в DTSTART/DTEND, тогда это дает то же время UTC, что и местное время в AsUtc. Но если я вручную заменю "GMT-0500" на "Канада / Восточная", то это даст правильное время utc в AsUtc.
Следующее не работает нормально -:
DTSTART;TZID=GMT-0500:20181213T190000
DTEND;TZID=GMT-0500:20181213T220000
Следующее работает отлично -:
DTSTART;TZID=Canada/Eastern:20181213T190000
DTEND;TZID=Canada/Eastern:20181213T220000
1 ответ
GMT-0500
не является действительным часовым поясом IANA. Вот список часовых поясов IANA. Ты хочешьEtc/GMT+5
,Canada/Eastern
устарела. Я предлагаю вам использоватьAmerica/Toronto
вместо.
В общем, я предлагаю вам ознакомиться с реальными именами часовых поясов, а не гадать, какими они могут быть, и надеяться на лучшее.
Были также некоторые ошибки с кешированием AsUtc
значения, как я отметил в примечаниях к выпуску. Я предлагаю обновить до 4. последний. Это должно быть обратно совместимо.