1

我希望能够使用类似于以下的代码以编程方式检索用户的姓名和经理:

    using (var clientContext = TokenHelper.GetClientContextWithAccessToken(hostWeb.ToString(), accessToken))
    {
        var peopleManager = new PeopleManager(clientContext);
        var personProperties = peopleManager.GetPropertiesFor(loginName);
        clientContext.Load(personProperties);
        clientContext.ExecuteQuery();
        property = personProperties.UserProfileProperties[requestedProperty].ToString();
        return property;
    }

User Profiles (Social)未经许可的应用程序上,我在ExecuteQuery(). 我假设您需要User Profiles (Social) | Read应用程序的许可才能执行此操作。我试图在开发站点上加载具有此权限的应用程序,并被告知我需要成为租户管理员,现在我怀疑此权限是否对基于商店的应用程序有效。

是否可以在 SharePoint AppStore 上的应用程序中使用 PeopleManager 访问用户数据,例如 PreferredName 和 Manager?如果没有,是否可以使用 Microsoft Graph 以非交互方式访问这些数据?

4

1 回答 1

0

您可以使用 Microsoft Graph 获取此数据,使用简单的查询(如https://graph.microsoft.com/v1.0/me获取当前用户配置文件和https://graph.microsoft.com/v1.0/我/经理找经理。您可以在此处找到 Microsoft Graph .Net SDK 的代码示例:https ://github.com/microsoftgraph/aspnet-snippets-sample

于 2016-10-06T19:04:22.980 回答