我正在尝试从今天开始选择接下来 2 周的活动。使用的逻辑非常简单。我得到所有日历,然后选择一个我需要从中提取事件并提供日期范围的日历。我正在从选定的日历中提取日期,但它看起来不像应用了日期范围。现在,我在以下日期安排了 2 个活动。
- 10 月 8 日
- 10 月 20 日
我应该只安排在 10 月 20 日举行的活动,但我两者都有。
CalendarService calService = new CalendarService(calendarAppName);
calService.setUserCredentials(username, password);
CalendarQuery calQuery = new CalendarQuery();
calQuery.Uri = new Uri("https://www.google.com/calendar/feeds/default/owncalendars/full");
CalendarFeed calFeed = (CalendarFeed)calService.Query(calQuery);
var activeCalendar = calFeed.Entries.Where(x => x.Title.Text == calendarName).FirstOrDefault();
if (activeCalendar != null)
{
EventQuery evtQuery = new EventQuery(GetCalendarFeed(activeCalendar));
evtQuery.StartDate = DateTime.Now.AddDays(-1);
evtQuery.EndDate = DateTime.Now.AddDays(14);
evtQuery.FutureEvents = false;
EventFeed evtFeed = calService.Query(evtQuery);
}
...
private static string GetCalendarFeed(AtomEntry calendarEntry)
{
string feedstring = calendarEntry.Id.AbsoluteUri.Substring(63);
return string.Format("http://www.google.com/calendar/feeds/{0}/private/full", feedstring);
}
有人能发现有什么不对吗?
编辑: 事实证明 StartTime/EndTime 工作正常。我真的不明白有什么区别,而且我似乎在文档中找不到任何东西。