svi*_*nto 8 c# graph azure office365 azure-active-directory
我正在尝试检索目录中所有用户的(分页)列表,并扩展了manager属性.当我运行以下HTTP查询时,它按我的意愿工作:
https://graph.windows.net/DOMAIN/users/?$expand=manager&api-version=2013-11-08
Run Code Online (Sandbox Code Playgroud)
但是,我似乎没有掌握如何使用Azure AD Graph客户端进行相同的查询.这就是我正在尝试的:
var userResult = _activeDirectoryClient.Users.Expand(x => x.Manager).ExecuteAsync().Result;
Run Code Online (Sandbox Code Playgroud)
小智 4
我根据https://github.com/AzureADSamples/ConsoleApp-GraphAPI-DotNet/blob/master/GraphConsoleAppV3/Program.cs的示例改编了以下内容,请尝试一下:
List<IUser> usersList = null;
IPagedCollection<IUser> searchResults = null;
try
{
IUserCollection userCollection = activeDirectoryClient.Users;
userResult = userCollection.ExecuteAsync().Result;
usersList = searchResults.CurrentPage.ToList();
}
catch (Exception e)
{
Console.WriteLine("\nError getting User {0} {1}", e.Message,
e.InnerException != null ? e.InnerException.Message : "");
}
if (usersList != null && usersList.Count > 0)
{
do
{
usersList = searchResults.CurrentPage.ToList();
foreach (IUser user in usersList)
{
Console.WriteLine("User DisplayName: {0} UPN: {1} Manager: {2}",
user.DisplayName, user.UserPrincipalName, user.Manager);
}
searchResults = searchResults.GetNextPageAsync().Result;
} while (searchResults != null);
}
else
{
Console.WriteLine("No users found");
}Run Code Online (Sandbox Code Playgroud)