Как преобразовать событие в строковом формате в событие DDay.iCal?
У меня есть строка события, например, так:
BEGIN:VEVENT
CREATED;
VALUE=DATE:00010101
DTSTAMP:20150527T074655Z
DTSTART;VALUE=DATE:00010101
EFFECTIVEDATETIME:2015-05-27T07:46:55.3203522+00:00
RRULE:FREQ=DAILY;BYHOUR=12;BYMINUTE=0
SEQUENCE:0
SUMMARY:BLAH
UID:0622249b-7161-4e31-9517-f51dddaa4cd8
END:VEVENT
Как я Deserialize
это в DDay.iCal
событие?
1 ответ
Вы не можете десериализовать это, потому что вы изобрели вещи, которые не являются частью спецификации icalendar и не поддерживаются ical.net (dday.ical теперь ical.net). Эти вещи искажены или не существуют:
CREATED;
VALUE=DATE:00010101
EFFECTIVEDATETIME:2015-05-27T07:46:55.3203522+00:00
Посмотрите документацию VEVENT для действительных блоков VEVENT: http://www.kanzaki.com/docs/ical/vevent.html
Ваш вопрос говорит о слабости API ical.net: вы не можете десериализовать компоненты icalendar по частям. В идеальном мире вы сможете передать свою строку Event
конструктор, и он будет делать правильные вещи.
У меня есть открытый билет для переоценки синтаксического анализа и сериализации ical.net, который будет охватывать этот вариант использования. Добраться туда займет некоторое время.