我正在尝试使用 GraphClient SDK 来搜索站点。但是,它总是为第一方应用程序返回空响应,而相同的代码适用于具有相同权限的第三方应用程序。
代码:
var response = await this.graphClient.Sites
.Request(new List<Option>() { new QueryOption("search", searchQuery) })
.Select(string.Join(",", selectProperties))
.GetAsync();
无论 searchQuery 的任何值如何,第一方应用程序的响应始终为 []。但是,当我尝试使用第一方应用程序获取同一租户的特定站点时,它会返回预期的响应。
用于获取特定站点的工作代码:
await this.graphClient.Sites[siteId]
.Request()
.Select(string.Join(",", selectProperties))
.GetAsync();
我验证了应用程序具有 Sites.Read.All 应用程序权限。因为,获取指定站点的代码正在运行,问题似乎与权限无关。请指导我解决这个问题。