У нас есть Azure AD с более чем 20 тыс. Пользователей. Я пытаюсь прочитать всех этих пользователей со свойствами, такими как displayName, city, accountName, department. Я не могу читать всех пользователей. Я использую skiptoken, чтобы получить всех пользователей, но я получаю каждый раз только несколько тысяч не всех пользователей.Есть ли ограничение на загрузку пользователей Azure AD программным путем с помощью Graph API?
Вот мой пример кода для извлечения skiptoken:
public static string ExtractSkipToken(string responseString)
{
if (responseString.Contains("skiptoken=X"))
{
var startString = "skiptoken=X'";
var endString = "'";
var startIndex = responseString.IndexOf(startString, StringComparison.Ordinal);
var subText = responseString.Substring(startIndex + startString.Length);
var endIndex = subText.IndexOf(endString, StringComparison.Ordinal);
var skipToken = subText.Substring(0, endIndex);
return skipToken;
}
return string.Empty;
}
Кто сделал это?
Благодарим вас за ответ. Я анализирую responseString, потому что он также имеет загруженную информацию о пользователях. Что вы подразумеваете, используя предоставленную ссылку в ответе JSON. Я следил за вашим рефером и теперь менял свой RequestUrl с помощью $ top = 999, и теперь я получаю только 7k или 8k пользователей. – user2584780
Я нашел проблему. Это проблема синтаксического анализа от responseString. Я использовал ((JObject) результат) .First.Children() as IJEnumerable; чтобы получить пользователей от responseString, но вышеприведенный оператор не всегда возвращает пользователей, которые находятся в responseString, чтобы собирать в мою коллекцию, если я использую JObject.Parse (responseString) ["value"], я всегда могу собирать пользователей, которые находятся в responseString. Большое вам спасибо за вашу помощь. –
user2584780