Microsoft graph api 架构扩展:“为资源“用户”的属性“companyName”指定的查询筛选子句不受支持或无效。”

Microsoft graph api 架构扩展:“为资源“用户”的属性“companyName”指定的查询筛选子句不受支持或无效。”,microsoft-graph-api,microsoft-graph-sdks,Microsoft Graph Api,Microsoft Graph Sdks,我当前正在构建一个应用程序,该应用程序要求我根据自定义属性从Graph API检索用户,在这种情况下,Extree82QL2V_test/companyName,但到目前为止,API使用为资源“User”的属性“companyName”指定的不受支持或无效查询筛选器子句进行响应 检索扩展名的请求: https://graph.microsoft.com/v1.0/schemaExtensions?$filter=id eq‘ExoE82QL2V_测试’ 结果是: 根据e82ql2v_test/c

我当前正在构建一个应用程序,该应用程序要求我根据自定义属性从Graph API检索用户,在这种情况下,Extree82QL2V_test/companyName,但到目前为止,API使用为资源“User”的属性“companyName”指定的不受支持或无效查询筛选器子句进行响应

检索扩展名的请求:

https://graph.microsoft.com/v1.0/schemaExtensions?$filter=id eq‘ExoE82QL2V_测试’

结果是:

根据e82ql2v_test/companyName检索用户的请求:

https://graph.microsoft.com/v1.0/users?$select=EXTEE82QL2V\ U测试、给定姓名、姓氏、邮件、手机、部门、公司名称、启用帐户&$filter=EXTEE82QL2V\ U测试/公司名称eq“测试”

结果是:

与Microsoft Graph.NET SDK相同的查询:

我不明白问题是什么,因为我遵循了关于过滤自定义属性的说明

非常感谢您的帮助

编辑:下面是不带$select的$select的样子

请求: https://graph.microsoft.com/v1.0/users?$select=givenName、姓氏、邮件、手机、部门、公司名称、启用帐户、Extere82QL2V_测试

答复:

编辑2: 我用另一个自定义属性Extree82QL2V_测试/managerMail成功地过滤了用户,这是一个进步,但我仍然需要在Extree82QL2V_测试/companyName上应用一个过滤器并使其正常工作

编辑3:
在Extree82ql2v_测试/expiryDate和Extree82ql2v_测试/arrivalDate上进行过滤也可以,这两个属性对过滤都是无用的,但至少我知道它们可以工作。至于extoe82ql2v_test/companyName,我想知道这是否是因为该属性同时存在于模式扩展和用户图形对象中?

您是否仍在寻找有关此问题的帮助Hello@SruthiJ MSFTIdentity我仍在寻找答案,而不是寻求帮助,因为我很好奇,项目已经完成。对该自定义属性的筛选是从我正在处理的项目中描述的,该属性已更改其名称companyName=>company请尝试以下操作https://graph.microsoft.com/v1.0/users?$filter=adatumisv_课程/name eq‘test’和$select=givenName、姓氏、邮件、手机、部门、公司名称、账户启用、,adatumisv_课程让我们知道它是否有帮助
{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#schemaExtensions",
    "value": [
        {
            "id": "extoe82ql2v_test",
            "description": "Extend data for users",
            "targetTypes": [
                "User"
            ],
            "status": "InDevelopment",
            "owner": "d9a847ce-ca03-4779-88d6-c7e4f98297fe",
            "properties": [
                {
                    "name": "companyName",
                    "type": "String"
                },
                {
                    "name": "managerMail",
                    "type": "String"
                },
                {
                    "name": "arrivalDate",
                    "type": "DateTime"
                },
                {
                    "name": "expiryDate",
                    "type": "DateTime"
                }
            ]
        }
    ]
}
{
    "error": {
        "code": "Request_UnsupportedQuery",
        "message": "Unsupported or invalid query filter clause specified for property 'companyName' of resource 'User'.",
        "innerError": {
            "date": "2020-07-24T20:46:51",
            "request-id": "639b8131-70dd-4436-b624-88167fe105eb"
        }
    }
}
var res = await _graphClient.Users.Request()
    .Select($"extoe82ql2v_test,givenName,surname,mail,mobilePhone,department,companyName,accountEnabled")
    .Filter($"extoe82ql2v_test/companyName eq 'test'").GetAsync()
{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(givenName,surname,mail,mobilePhone,department,companyName,accountEnabled,extoe82ql2v_test)",
    "value": [
        {
            "givenName": "Antoine",
            "surname": "D",
            "mail": "antoine.d@contoso.com",
            "mobilePhone": null,
            "department": null,
            "companyName": null,
            "accountEnabled": true,
            "extoe82ql2v_test": {
                "@odata.type": "#microsoft.graph.ComplexExtensionValue",
                "expiryDate": "2020-12-31T00:00:00Z",
                "arrivalDate": "2020-07-22T00:00:00Z",
                "managerMail": "antoine.d@contoso.com",
                "companyName": "test"
            }
        }
    ]
}