调用`GetMemberGroupsAsync`时不存在资源

调用`GetMemberGroupsAsync`时不存在资源

问题描述:

我正在使用Microsoft.Azure.ActiveDirectory.GraphClient;调用`GetMemberGroupsAsync`时不存在资源

我打电话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) 

上为什么会发生这种异常发生,以及如何解决它的任何想法?

+1

也许你打算获得*用户的*成员组?您现在正试图获得一个组,然后获取该组的组成员资格。 – juunas

错误表示您请求的组不存在。

根据代码,您可以通过userObjectId获取组。确保这是一个有效的组ID而不是用户ID。

它更应该作为

var securityGroupMemberships = client.DirectoryObjects.GetByObjectId(userObjectId).GetMemberGroupsAsync(true).GetAwaiter().GetResult(); 

这给所有用户是部分安全组。