我正在使用Microsoft.Azure.ActiveDirectory.GraphClient;
。
我打电话给GetMemberGroupsAsync
如下:
IEnumerable<string> memberships = client.Groups.GetByObjectId(userObjectId).GetMemberGroupsAsync(true).GetAwaiter().GetResult();
我得到以下异常:
System.Data.Services.Client.DataServiceClientException: {"odata.error":{"code":"Request_ResourceNotFound","message":{"lang":"en","value":"Resource 'c92da223-a37f-4194-9bbf-74669885a0f0' does not exist or one of its queried reference-property objects are not present."}}}
at System.Data.Services.Client.BaseAsyncResult.EndExecute[T](Object source, String method, IAsyncResult asyncResult)
at System.Data.Services.Client.QueryResult.EndExecuteQuery[TElement](Object source, String method, IAsyncResult asyncResult)
关于为什么会发生这种异常以及如何解决它的任何想法?
答案 0 :(得分:0)
错误表示您请求的组不存在。
根据代码,您可以使用 Calendar cal = Calendar.getInstance();
获取群组。确保这是一个有效的组ID而不是用户ID。
答案 1 :(得分:0)
应该用作
var securityGroupMemberships = client.DirectoryObjects.GetByObjectId(userObjectId).GetMemberGroupsAsync(true).GetAwaiter().GetResult();
这给出了用户所属的所有安全组。