我有一个电子邮件帐户,这是一个安全组,其中的成员很少。我想弄清楚该群组所有者的电子邮件地址,但我无法弄明白。
以下是源代码
ActiveDirectoryClient activeDirectoryClient = new ActiveDirectoryClient(serviceRoot, async () => await Task.FromResult(accessToken));
var group = (Group)await activeDirectoryClient.Groups.Where(u => u.Mail == "email@domaincom").ExecuteSingleAsync();.
var groupFetcher = activeDirectoryClient.Groups.GetByObjectId(group.ObjectId);
var membersResult = groupFetcher.Members.ExecuteAsync().Result;
var ownerResult = groupFetcher.Owners.ExecuteAsync().Result;
执行此代码后,我可以看到该组的成员,但是 hy ownerResult变量始终为空? 如何检索群组的所有者?
答案 0 :(得分:2)
我正在使用下面的代码进行测试(Microsoft.Azure.ActiveDirectory.GraphClient
版本为2.1.1
),这对我来说效果很好。请确保该组已分配所有者。
var group = (Group) client.Groups.Where(u => u.Mail == "email@domain.onmicrosoft.com").ExecuteSingleAsync().Result;
var groupFetcher = client.Groups.GetByObjectId(group.ObjectId);
//var membersResult = groupFetcher.Members.ExecuteAsync().Result;
var ownerResult = groupFetcher.Owners.ExecuteAsync().Result;
foreach (var owner in ownerResult.CurrentPage)
Console.WriteLine(((Microsoft.Azure.ActiveDirectory.GraphClient.User)owner).DisplayName);
如果所有者存在,我还建议您使用Fiddler捕获请求,以检查是否需要响应。