C# Microsoft Graph API 获取具体日历
C# Microsoft Graph API obtain specific calendar
我在 Visual Studio 2019 v16.4.5
C# 项目中使用新的 Microsoft Graph Core API v1.20.0
。
我想分别获取每个office365日历的所有日历条目(Event
s)。
据我所知,我可以使用 await graphClient.Me.Calendars.Request().GetAsync();
检索所有日历,使用
检索所有事件
string startDate = DateTime.Now.AddMonths(-1).ToString("s");
string endDate = DateTime.Now.AddYears(1).ToString("s");
var queryOptions = new List<QueryOption>()
{
new QueryOption("startDateTime", startDate),
new QueryOption("endDateTime", endDate),
};
var resultPage = await graphClient.Me.Events.Request(queryOptions)
.OrderBy("createdDateTime DESC")
.GetAsync();
但我不知道如何遍历所有日历并获取每个日历的所有事件。
Me.Events 将仅 return 用户主日历中的事件。
您需要先使用 Me.Calendars,如此处所述 https://docs.microsoft.com/en-us/graph/api/user-list-calendars?view=graph-rest-1.0&tabs=http
var calendars = await graphClient.Me.Calendars
.Request()
.GetAsync();
并且对于每个日历 ID,您都会返回呼叫列表事件 https://docs.microsoft.com/en-us/graph/api/user-list-events?view=graph-rest-1.0&tabs=http
GET /me/calendars/{id}/events
在 SDK 中是
graphClient.Me.Calendars["calendar-id"].Events..Request()
.GetAsync();
我在 Visual Studio 2019 v16.4.5
C# 项目中使用新的 Microsoft Graph Core API v1.20.0
。
我想分别获取每个office365日历的所有日历条目(Event
s)。
据我所知,我可以使用 await graphClient.Me.Calendars.Request().GetAsync();
检索所有日历,使用
string startDate = DateTime.Now.AddMonths(-1).ToString("s");
string endDate = DateTime.Now.AddYears(1).ToString("s");
var queryOptions = new List<QueryOption>()
{
new QueryOption("startDateTime", startDate),
new QueryOption("endDateTime", endDate),
};
var resultPage = await graphClient.Me.Events.Request(queryOptions)
.OrderBy("createdDateTime DESC")
.GetAsync();
但我不知道如何遍历所有日历并获取每个日历的所有事件。
Me.Events 将仅 return 用户主日历中的事件。
您需要先使用 Me.Calendars,如此处所述 https://docs.microsoft.com/en-us/graph/api/user-list-calendars?view=graph-rest-1.0&tabs=http
var calendars = await graphClient.Me.Calendars
.Request()
.GetAsync();
并且对于每个日历 ID,您都会返回呼叫列表事件 https://docs.microsoft.com/en-us/graph/api/user-list-events?view=graph-rest-1.0&tabs=http
GET /me/calendars/{id}/events
在 SDK 中是
graphClient.Me.Calendars["calendar-id"].Events..Request()
.GetAsync();