【问题标题】:Azure active directory graph api query userAzure 活动目录图 api 查询用户
【发布时间】:2017-12-04 06:30:42
【问题描述】:

我正在开发一个需要查询 Azure AD 的应用程序。该查询正在处理某些字段,但在某些字段(例如手机号码)上不起作用。

使用名称过滤时查询正常

var searchResults = await userCollection.Where(user =>
                (user.UserPrincipalName.StartsWith(searchString) ||
                user.DisplayName.StartsWith(searchString) ||
                user.GivenName.StartsWith(searchString) ||
                user.Surname.StartsWith(searchString) ||
                user.Mail.StartsWith(searchString)) && user.AccountEnabled == true).ExecuteAsync();

但手机号码和其他字段会抛出异常

var searchResults = await userCollection
                .Where(x => x.Mobile == "+63 922 3965 021").ExecuteAsync();

这是一个例外 “为资源 'User' 的属性 'mobile' 指定了不受支持或无效的查询过滤器子句。”

【问题讨论】:

    标签: azure azure-active-directory azure-ad-graph-api


    【解决方案1】:

    您可以通过这种方式查询一些属性。 Linq 查询针对Azure AD Graph API 生成Filter 表达式。但是其他的,比如手机号码,你不能。

    用户对象的可过滤属性可见in the reference

    您可以过滤的那些被标记为这样(例如Surname 属性:“GET ($filter)”)。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-28
    • 1970-01-01
    相关资源
    最近更新 更多