【发布时间】:2021-03-12 19:41:20
【问题描述】:
代码:
var users = await graphClient.Users
.Request()
.Filter("startswith(userPrincipalName, '" + userPrincipalName + "')")
.Select(u => new { u.Id, u.OtherMails, u.DisplayName, u.UserPrincipalName, u.MemberOf })
.GetAsync();
为 MemberOf 返回一个空值。我知道我可以做一个后续:
var groups = await graphClient.Users[user.Id].MemberOf.Request().GetAsync();
但我宁愿返回包含所有信息的 Microsoft.Graph.User 类类型。
【问题讨论】:
-
据我所知,你不能。我这样做并使用了两个查询。
-
嗨@Crowcoder,如果您在后续查询中获取组,您能否以某种方式将它们添加到检索到的用户对象中?
-
您可以创建自己的类,其中包含您想要从两个结果中获得的所有属性,并将数据映射到实例。
-
我希望避免这种情况,执行以下操作但无法获得正确的代码: var groups = await graphClient.Users[user.Id].MemberOf.Request().GetAsync( ); var memberOf = new User().MemberOf; foreach (var group in groups) { memberOf.Add(group); } user.MemberOf = memberOf;
-
您好,如果发布的答案解决了您的问题,请单击复选标记将其标记为答案。这样做可以帮助其他人找到他们问题的答案。见meta.stackexchange.com/questions/5234/…
标签: c# active-directory microsoft-graph-api microsoft-graph-sdks