如何筛选使用Microsoft Graph查询的Sharepoint列表项
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何筛选使用Microsoft Graph查询的Sharepoint列表项相关的知识,希望对你有一定的参考价值。
我正在使用.net SDK。尝试使用Microsoft Graph过滤大型列表,
我的查询使用.Items.Request().Expand("fields").GetAsync();
工作正常但是,如果我添加一个过滤器,它不会按预期工作。
我尝试了两种方法:
- 添加
.Expand("fields").Filter("fields/Archived eq false").GetAsync();
有效,但返回所有列表项而不进行过滤。 - 添加
.Expand("fields($filter=Archived eq false)").GetAsync();
这不起作用 - 它给我一个错误,扩展,选择和过滤是唯一允许的查询。
什么工作是("fields($select=Archived)")
,但当然,没有过滤。
那么我们如何使用Microsoft Graph查询大型列表呢?
答案
您需要引用传递给过滤器的值:Fields/Archived eq 'false'
(注意'
s):
var result = graphClient
.Sites["root"]
.SiteWithPath("siteId")
.Lists["listId"]
.Items
.Request()
.Expand("Fields")
.Filter("Fields/Archived eq 'false'");
另一答案
经过对此问题的过多研究后,我发现以下解决方案及其对我的工作正常:
要过滤,您需要添加Header参数,如下所示:首选:HonorNonIndexedQueriesWarningMayFailRandomly
Graph api如下:&$ filter = Fields / Archived eq False
以上是关于如何筛选使用Microsoft Graph查询的Sharepoint列表项的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Microsoft Graph 上的扩展集合中进行筛选和选择?
如何使用 microsoft graph api 获取 EndRecurrenceDate
Microsoft Graph API - 如何通过 API 向特定用户授予对我的收件箱的访问权限