2017-09-26 55 views
0

我正在使用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

回答

0

錯誤表示您請求的組不存在。

根據代碼,您可以通過userObjectId獲取組。確保這是一個有效的組ID而不是用戶ID。

0

它更應該作爲

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

這給所有用戶是部分安全組。