首页 > 解决方案 > 在 Azure AD B2C Rest Api 中按自定义字段筛选用户

问题描述

在 azure B2c 目录中,我声明了名为 IsCommercial 的布尔自定义字段。以前在目录中创建了用户。现在我试图让用户按 IsCommercial 自定义字段过滤。因此,如果我尝试通过 IsCommercial=true 的 Rest API 获取用户,那么它工作正常。但是我无法为以前创建的用户过滤 IsCommercail=false 或 IsCommercial=null 的用户。当 IsCommercail=false 它不返回任何内容,因为所有以前创建的用户都没有这样的自定义字段值,我理解这一点,但是对于 IsCommercial=null 它返回错误。所以

filter = $"$filter={extendedProperty.Name} eq true";

完美运行并返回过滤数据。但是当我试图让没有自定义属性值的用户时:

filter = $"$filter={extendedProperty.Name} eq null";

它抛出错误“内部服务器错误”。有没有办法让extendedProperty 值为空的用户?

UPD: 我正在尝试乔伊的解决方案:

filter = $"$filter={extendedProperty.Name} eq $false"

仍然返回错误,但现在:

{"odata.error":{"code":"Request_UnsupportedQuery","message":{"lang":"en","value":"Unsupported Query."},"requestId":"018ebd6e-561e-4796-ad52-296ab792f968","date":"2018-11-14T09:23:18"}}

标签: azure-ad-b2cazure-ad-graph-api

解决方案


推荐阅读