我正在尝试使用retrieve Google's .NET Calendar API南非公众假期。
我有以下问题:
EventQuery
范围。 (在给定日期范围之前和之后)我通过查看online验证了此特定公开日历的日期是否正确。
我最好的猜测是我错误地使用了API,并且我正在查询日历条目的创建/更新日期而不是事件日期。
的代码: 的
var feedUrl = "http://www.google.com/calendar/feeds/en.sa%23holiday%40group.v.calendar.google.com/public/full";
var service = new CalendarService("My application name");
var qry = new EventQuery(feedUrl);
qry.StartDate = new DateTime(2011, 1, 1);
qry.EndDate = new DateTime(2012, 1, 1);
EventFeed results = service.Query(qry);
foreach (EventEntry entry in results.Entries)
{
if (entry.Times.Count == 0)
continue;
// Using entry.Times[0].StartTime results in
// missing data and data outside of the given search criteria.
}
我使用的是最新的Google .NET Data API 1.7.0.1
我做错了什么?
答案 0 :(得分:5)
发现问题:
qry.StartDate = new DateTime(2011, 1, 1);
qry.EndDate = new DateTime(2012, 1, 1);
应该是:
qry.StartTime = new DateTime(2011, 1, 1);
qry.EndTime = new DateTime(2012, 1, 1);
这解决了我在问题中提到的两个问题。 (不确定为什么EventQuery
类同时具有日期/时间属性,当只有一个集合有效时,这会让人感到困惑。)