在组织部署的sharepoint farm 2013中。
在User Profile Service设置中,在三个不同的域中创建了三个连接。
我需要从一个特定域(连接)获取所有用户配置文件。
有谁知道如何从特定域获取用户个人资料?
我有这段代码:
function getAllUsers() {
var clientContext = new SP.ClientContext.get_current();
var keywordQuery = new Microsoft.SharePoint.Client.Search.Query.KeywordQuery(clientContext);
keywordQuery.set_queryText(searchTerm);
keywordQuery.set_sourceId("B09A7990-05EA-4AF9-81EF-EDFAB16C4E31");
keywordQuery.set_rowLimit(rowsPerPage);
keywordQuery.set_trimDuplicates(false);;
keywordQuery.set_startRow(startRow);
var searchExecutor = new Microsoft.SharePoint.Client.Search.Query.SearchExecutor(clientContext);
results = searchExecutor.executeQuery(keywordQuery);
clientContext.executeQueryAsync(onQuerySuccess, onQueryError);
}
我在搜索结果中找不到这样的属性
也许我以某种方式使用此属性SPS-SourceObjectDN?但是如何?
答案 0 :(得分:0)
论坛上的Rajesh.Sitaraman https://social.technet.microsoft.com/Forums/en-US/512be815-c8dc-4669-a3d2-d3d2f731779c/sharepoint-2013-addin-jsom-how-to-get-users-profiles-from-specific-domain-?forum=sharepointdevelopment&prof=required 建议在CA中创建或更改结果源。
我拒绝了此变体并在应用中处理搜索结果
var index = users[i].indexOf("@");
var domainName = users[i].slice((index + 1), users[i].length);
if ($.inArray(domainName, domains) > -1) {..}