Ich versuche, Benutzergruppen Informationen von Azure Active Directory unter Verwendung von Code-Schnipsel zu erhalten.Ich kann keine Benutzergruppen von Azure Active Directory abrufen.
public async Task<List<string>> GetUserGroupsAsync(string alias)
{
var groupList = new List<string>();
try
{
Microsoft.Azure.ActiveDirectory.GraphClient.IUser userObject = getUserObject(alias);
Task t = Task.Run(async() =>
{
var grouppages = await ((IUserFetcher)userObject).MemberOf.OfType<Microsoft.Azure.ActiveDirectory.GraphClient.Group>().ExecuteAsync();
do
{
groupList.AddRange(grouppages.CurrentPage.Select(g => g.Mail != null ? g.Mail.Trim() : null).Where(eMail => !string.IsNullOrWhiteSpace(eMail)).ToList());
grouppages = await grouppages.GetNextPageAsync();
} while (grouppages != null);
});
t.Wait();
}
catch
{
throw;
}
return groupList;
}
Problem: ich unten Ausnahme bin immer einige Benutzer für .
System.AggregateException: One or more errors occurred. ---> System.AggregateException: One or more errors occurred. ---> System.AggregateException: One or more errors occurred. ---> Microsoft.Data.OData.ODataErrorException: The specified page token value has expired and can no longer be included in your request. ---> System.Data.Services.Client.DataServiceQueryException: An error occurred while processing this request. ---> System.Data.Services.Client.DataServiceClientException: {"odata.error":{"code":"Directory_ExpiredPageToken","message":{"lang":"en","value":"The specified page token value has expired and can no longer be included in your request."}}}
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)
--- End of inner exception stack trace ---
at System.Data.Services.Client.QueryResult.EndExecuteQuery[TElement](Object source, String method, IAsyncResult asyncResult)
at System.Data.Services.Client.DataServiceRequest.EndExecute[TElement](Object source, DataServiceContext context, String method, IAsyncResult asyncResult)
at System.Data.Services.Client.DataServiceContext.EndExecute[TElement](IAsyncResult asyncResult)
at Microsoft.Azure.ActiveDirectory.GraphClient.Extensions.DataServiceContextWrapper.<ExecuteAsync>b__6b[TSource,TInterface](IAsyncResult i)
at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)
Bitte helfen Sie bei der Lösung dieses Problems. Es wird sehr hilfreich sein.
Ist die Fehlermeldung nicht offensichtlich genug? Ihr Zugriffstoken ist abgelaufen. Btw, sollten Sie 'getUserObject' Funktion sowie –