public override TimeSpan GetDuration(DateTime start, DateTime end) { if (TimeZone.SupportsDaylightSavingTime) { // start if (TimeZone.IsAmbiguousTime(start)) { start = OnAmbiguousMoment(start); } else if (TimeZone.IsInvalidTime(start)) { start = OnInvalidMoment(start); } // end if (TimeZone.IsAmbiguousTime(end)) { end = OnAmbiguousMoment(end); } else if (TimeZone.IsInvalidTime(end)) { end = OnInvalidMoment(end); } } return(base.GetDuration(start, end)); }