繁体   English   中英

Microsoft图形无法访问的SkipToken方法

[英]SkipToken method for microsoft-graph inaccessible

我正在尝试使用Microsoft-Graph从Outlook / Office365日历中获取一些事件。 从结果中我注意到,检索到的事件数为200,但是日历中的事件数却更多。 因此,根据来自https://docs.microsoft.com/zh-cn/graph/delta-query-events?tabs=csharp的信息,我尝试分批提取事件,直到收到@ odata.deltaLink标记并告知我停下来,因为没有其他事件。 这里的问题是我不能使用SkipToken(...)方法来知道应该从哪一点接收其余事件。

我已经安装了1.17.0微软图形版本(发布数据:2019年8月16日,星期五(8/16/2019))。

我使用以下代码来检索第一批事件:

var events = await graphClient.Me.CalendarView.Delta()
                                   .Request(calendarInterval)
                                   .Header("Prefer", "odata.track-changes")
                                   .GetAsync();

从“事件”中,我得到了events.AdditionalData [“ @ odata.nextLink”],以便将其用于新呼叫。

从events.AdditionalData [“ @ odata.nextLink”]中,我获得了skiptoken代码,以便将其用于以下调用:

var delta = await graphClient.Me.CalendarView
    .Delta()
    .Request()
    .Header("Prefer","odata.track-changes")
    .SkipToken("R0usmci39OQxqJrxK4")
    .GetAsync();

R0usmci39OQxqJrxK4->是从事件中提取的代码。AdditionalData[“ @ odata.nextLink”]

这里最大的问题是我不能使用SkipToken()方法。 我有以下错误,但我不知道为什么,因为它使用了Microsoft-graph的最新版本。

错误:错误CS1061'IEventDeltaRequest'不包含'SkipToken'的定义,并且无法找到接受类型为'IEventDeltaRequest'的第一个参数的可访问扩展方法'SkipToken'(您是否缺少using指令或程序集引用?)

您可以通过传递requestOption来实现相同的结果,如下所示

var queryOptions = new List<QueryOption>()
{
    new QueryOption("$skiptoken", "R0usmci39OQxqJrxK4")
};

var delta = await graphClient.Me.CalendarView
    .Delta()
    .Request(queryOptions)
    .Header("Prefer","odata.track-changes")
    .GetAsync();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM