1

當我爲SharePoint人員搜索編寫自定義顯示模板時,我想顯示搜索到的用戶的管理員。當我顯示從SharePoint人回到經理值搜索,它會顯示如下:如何獲取用戶配置文件管理器屬性的顯示名稱

我:0#.F |會員| [email protected]

我想顯示顯示代替我的SharePoint顯示模板中的帳戶名稱。讓我知道是否可以使用JavaScript或者通過在SharePoint用戶配置文件屬性更改上進行一些配置來完成此操作。

回答

1

這不能用配置完成。您需要查詢User Profile Service並使用搜索服務返回的登錄名獲取顯示名稱。

爲取得任何屬性,你可以使用這樣的事情:

function getProfilePropertyValueFromLoginName(loginName, propertyName, success, error) { 
      // Get the current client context and PeopleManager instance. 
      var clientContext = new SP.ClientContext.get_current(); 
      var peopleManager = new SP.UserProfiles.PeopleManager(clientContext); 

      // Get user properties for the target user. 
      // To get the PersonProperties object for the current user, use the 
      // getMyProperties method. 
      var personProperties = peopleManager.getPropertiesFor(loginName); 

      // Load the PersonProperties object and send the request. 
      clientContext.load(personProperties); 
      clientContext.executeQueryAsync(
       function() { 

        if (success) { 
         success(loginName, personProperties.get_userProfileProperties()[propertyName]); 
        } 
       }, function (sender, args) { 
        if (error) { 
         error(sender, args); 
        } 
       }); 
     } 

-Hope它有助於

相關問題