访问Microsoft.Graph.User用户主体名称属性-Graph API

时间:2018-08-22 16:43:22

标签: microsoft-graph microsoft-graph-sdks

我正在使用Microsoft Graph v1 API来获取组中所有用户的列表。像这样:

var groupInfo = await graphServiceClient.Groups[group].Members.Request()
                                        .GetAsync().ConfigureAwait(false);

这将向我返回<Microsoft.Graph.User>对象的列表。此对象中唯一可访问的属性似乎是ID OData and AdditionalData。有什么办法可以获取诸如"UserPrincipalName" , "DisplayName"之类的属性?

我不希望再次点击图形API来基于我能够访问的user ID获取这些值。

我尝试使用:

var groupInfo = await graphServiceClient.Groups[group].Members.Request().Select("userPrincipalName")
                                        .GetAsync().ConfigureAwait(false);

但是,这似乎仍然提供了User对象,而不仅仅是UPN。 这是某个地方的错误吗?

1 个答案:

答案 0 :(得分:2)

您需要将DirectoryObject转换为它的本机类型才能访问它。

var groupInfo = await graphServiceClient.Groups[group].Members.Request().Select("userPrincipalName")
                                        .GetAsync().ConfigureAwait(false);

var user = groupInfo[0] as User;