使用图形 API 搜索 SharePoint 项目

问题描述 投票:0回答:2

我正在尝试使用 Graph API 和 C# 搜索 SharePoint 列表的项目。

能够通过以下 GET 请求获取列表中的所有项目

https://graph.microsoft.com/v1.0/sites/myorganization.sharepoint.com,70e38521-b8bd-4008-98d3-f84721c55e0b,3338923b-2c65-45a9-bd70-941ac1345ca0/lists/24c9dc88-03f4-4aca-816c-acfcaf7b864d/items?expand=fields

我如何在此列表中搜索特定项目,如下所示。

寻找 GET 请求格式。非常感谢您提前的帮助。

sharepoint microsoft-graph-api
2个回答
0
投票

您可以尝试在请求末尾添加过滤器:

?expand=fields&filter=fields/TransactionRef eq '317690_92800'

0
投票

不幸的是,大多数高级查询不适用于使用图形 API 的 SharePoint。它们似乎是为 Entra ID 保留的。如果您要过滤文件名,您能做的最好的事情就是使用搜索端点,因为属性搜索将不可避免地导致对每个 DriveItem 进行手动搜索。

本文档提供了使用搜索/查询端点的示例:

https://learn.microsoft.com/en-us/graph/search-concept-files

请注意他们针对缺失或删除的功能提出的大红色警告。我无法让搜索/查询端点在 SharePoint 文件上进行名称搜索,使用此端点更简单:

https://learn.microsoft.com/en-us/graph/api/driveitem-search?view=graph-rest-1.0&tabs=http

更奇怪的是,有时您可以使用过滤器使某些查询正常工作,而其他查询却不能。因此,使用查询端点的风险由您自行承担。使用搜索端点按名称搜索似乎效果很好,但在 SharePoint 中搜索 DriveItems 时,在其上放置筛选器可能会遇到问题。

我目前正在自行研究解决此问题的手动方法。如果有人对此感兴趣,我可以发布带有示例的更新。

© www.soinside.com 2019 - 2024. All rights reserved.