-
Notifications
You must be signed in to change notification settings - Fork 248
FAQ
This FAQ targets version 5.0 of the iCal.NET library.
This might not feel too natural. Duration and EndTime are influenced by DST changes. As EndTime is represented as CalDateTime, which does not provide any means of resolving ambiguous date/times, it is not well suited for representing the end time. For the start time this is fine, because the RFC specifies how ambiguous dates shall be resolved, but for the end time this is not the case.
RFC 5545 distinguishes between exact time and nominal time. If an event's duration is specified via the DTEND property, then the duration is considered exact, i.e. the same number of seconds apply to every recurrence. If its specified via the DURATION property, then the duration's day and week parts are considered nominal while the time part is considered exact. Nominal means that the duration is calculated in local time.
The EffectiveDuration actually honors the event's EndTime and Duration properties behind the scenes and applies the rules imposed by RFC 5545.
Period.EffectiveDuration and Period.EffectiveEndTime are calculated based on the Period.StartTime and the event's EndTime or Duration properties.