要解决这个问题,您可以尝试在代码中使用.CurrentPage
属性来获取Microsoft.Graph.IGraphServiceUsersCollectionPage
类型的集合。
以下是一个示例代码:
var graphClient = new GraphServiceClient(authProvider);
var users = await graphClient.Users.Request().GetAsync();
var usersList = new List();
// 使用 .CurrentPage 属性来获取集合
var currentPage = users.CurrentPage;
while (currentPage != null)
{
usersList.AddRange(currentPage);
if (currentPage.NextPageRequest != null)
{
currentPage = await currentPage.NextPageRequest.GetAsync();
}
else
{
currentPage = null;
}
}
// 现在可以使用 usersList 来访问用户集合
foreach (var user in usersList)
{
Console.WriteLine(user.DisplayName);
}
在这个示例中,我们首先使用graphClient.Users.Request().GetAsync()
来获取用户集合。然后,我们使用.CurrentPage
属性来获取当前页的用户列表,并将它们添加到usersList
中。然后,我们通过检查NextPageRequest
属性来确定是否还有更多页面可用。如果有,我们使用NextPageRequest.GetAsync()
方法来获取下一页的用户列表,并继续迭代直到获取所有用户。
最后,您可以使用usersList
来访问用户集合的每个成员。
请注意,这只是一个示例代码,并假设您已经正确配置了GraphServiceClient
和authProvider
。您可能需要根据您的实际情况进行适当的更改。