当我调用_activeDirectoryClient.Groups.AddGroupAsync(group),其中group的displayname大于120 char时,它会抛出以下异常:
Microsoft.Data.OData.ODataErrorException:不支持或无效的查询 为资源的属性'displayName'指定的filter子句 '组'。 ---> System.Data.Services.Client.DataServiceQueryException: 处理此请求时发生错误。 ---> System.Data.Services.Client.DataServiceClientException: { “odata.error”:{ “代码”: “Request_UnsupportedQuery”, “消息”:{ “郎”: “EN”, “值”:“不支持的 或者为属性'displayName'指定的无效查询过滤器子句 资源'Group'。“}}} at System.Data.Services.Client.BaseAsyncResult.EndExecute [T](对象 source,String方法,IAsyncResult asyncResult)at System.Data.Services.Client.QueryResult.EndExecuteQuery [TElement](对象 source,String方法,IAsyncResult asyncResult)
PS:我在Microsoft Graph github中问了这个问题。但是,我被告知要在此发布。
答案 0 :(得分:1)
我认为该错误不是由AddGroupAsync函数引起的,如果group的displayname超过其'允许的长度,它会抛出错误:
Invalid value specified for property 'displayName' of resource 'Group'.
在displayname属性上使用查询过滤器(大于120个字符长度)时,您的错误在displayname属性上显示无效的查询过滤器:
https://graph.windows.net/xxxxx.onmicrosoft.com/groups?$filter=displayName eq 'xxxxxxx'&api-version=1.6
它显示与您相同的错误,似乎服务器端限制了属性上的过滤器长度。如果您希望azure ad graph api支持,您可以发送反馈here。