在 MSGraph Dot Net 中获取日历事件时忽略 QueryOptions

QueryOptions ignored when getting calendar events in MSGraph Dot Net

我正在尝试获取用户今天的日历活动。所以我添加了一些查询参数,但它们被忽略了,图形客户端 returns 用户的事件就好像我没有提供任何参数一样 (startatetime):

var options = new QueryOption[]
{
    new QueryOption("startdatetime", DateTime.UtcNow.ToString("o")),
    new QueryOption("enddatetime", DateTime.UtcNow.AddDays(1).ToString("o")),
};
var events = await graphServiceClient
    .Me
    .Calendar
    .Events
    .Request(options)
    .GetAsync();

我在图形资源管理器中对其进行了测试,它运行良好。但是在 sdk 中,它 returns 今天之前开始的日历事件。

您的代码相当于调用:

`/events?startdatetime={dateTime}&enddatetime={dateTime}`. 

这是一个有效的端点,但您传递的查询参数无效。您正在寻找的是 calendarView:

`/calendarView?startdatetime={dateTime}&enddatetime={dateTime}`

使用 SDK,这看起来像这样:

var options = new QueryOption[]
{
    new QueryOption("startDateTime", DateTime.UtcNow.ToString("o")),
    new QueryOption("endDateTime", DateTime.UtcNow.AddDays(1).ToString("o")),
};

var events = await graphServiceClient
    .Me
    .CalendarView
    .Request(options)
    .GetAsync();