/// <summary> /// Gets the event info collection. /// </summary> /// <param name="dtStart">The dt start.</param> /// <param name="dtEnd">The dt end.</param> /// <returns></returns> public EventInfoCollections GetEventInfoCollection(DateTime dtStart, DateTime dtEnd) { EventInfoCollections retVal = new EventInfoCollections(); if (_calendarId == -1) { throw new NullReferenceException("calendarId"); } CalendarEventLink[] eventLinks = CalendarEventLink.List(new FilterElement("CalendarId", FilterElementType.Equal, _calendarId)); foreach (CalendarEventLink eventLink in eventLinks) { try { CalendarEvent calEvent = new CalendarEvent(eventLink.EventId); if ((calEvent.DtStart >= dtStart) && (calEvent.DtEnd <= dtEnd)) { CalendarEventInfo eventInfo = new CalendarEventInfo(this, calEvent); eventInfo.SetEventId(EventProviderHelper.MakeEventId(GetEventType(), (ulong)(int)eventLink.PrimaryKeyId.Value)); retVal.Add(eventInfo); } } catch (ObjectNotFoundException) { throw; } } return(retVal); }
/// <summary> /// Events the delete handler. /// </summary> /// <param name="sender">The sender.</param> /// <param name="args">The <see cref="Mediachase.Ibn.Calendar.CalendarEventArgs"/> instance containing the event data.</param> private void PrimaryEventDeleteHandler(object sender, CalendarEventArgs args) { CalendarEventLink[] eventLinks = CalendarEventLink.List(new FilterElement("EventId", FilterElementType.Equal, args.CalEvent.PrimaryKeyId.Value)); foreach (CalendarEventLink eventLink in eventLinks) { eventLink.Delete(); } }