MS Graph C# SDK 按companyName筛选用户不生效如何解决
原因说明
companyName属于Microsoft Graph的高级查询属性,筛选时必须同时携带ConsistencyLevel: eventual请求头和$count=true查询参数才能生效,你之前的SDK调用未添加这两项配置所以筛选逻辑不生效。
调整后的代码
// 声明查询参数 List<QueryOption> queryOptions = new List<QueryOption> { new QueryOption("$count", "true") }; IGraphServiceUsersCollectionPage users = await graphServiceClient.Users .Request(queryOptions) .Header("ConsistencyLevel", "eventual") .Select("id") .Filter("companyName eq 'CompanyName'") .GetAsync();
补充说明
- 如果你使用的是beta版本的Graph端点,只需保证初始化
graphServiceClient时指定了beta端点,上述代码逻辑无需修改即可正常运行 - 若筛选结果超过999条,分页请求时也需要同步携带上述请求头和查询参数,否则分页后的筛选仍会失效
内容的提问来源于stack exchange,提问作者Nagibator
相关产品推荐
相关产品推荐

