我在我的 C# 项目中使用 nuget 包 Ical.Net 4.2.0。我创建了一个循环日历事件,需要确定每次发生的开始日期时间。我使用 GetOccurrences() 查询日历,如下所示:
var now = DateTime.Parse("2021-09-16T10:00:00");
var later = now.AddHours(1);
//Repeat daily for 5 days
var rrule = new RecurrencePattern(FrequencyType.Daily, 1) { Count = 5 };
var e = new CalendarEvent
{
Start = new CalDateTime(now),
End = new CalDateTime(later),
RecurrenceRules = new List<RecurrencePattern> { rrule },
};
var calendar = new Calendar();
calendar.Events.Add(e);
var startSearch = new CalDateTime(DateTime.Parse("2021-09-16T00:00:00"));
var endSearch = new CalDateTime(DateTime.Parse("2021-09-21T23:59:59"));
var occurrences = calendar.GetOccurrences(startSearch, endSearch)
.Select(o => o.Source)
.Cast<CalendarEvent>()
.ToList();
occurrences
包含五个事件,但是寻找“开始”日期,我只能找到事件开始日期。在哪里可以找到每次重复事件发生的开始日期?