1

我将结果源级别设置为“SPSite”,因为我想使用在网站集级别定义的结果源。但它不起作用。'SPSite' 是 JSOM 中的有效参数吗?

let query = new Search.KeywordQuery(ctx);

// set Source Name
query.get_properties().set_item('SourceName', 'Result Source Name');
// set Source Level
query.get_properties().set_item('SourceLevel', 'SPSite');

如果我将源级别设置为“SPSiteSubscription”,它会成功使用租户级别的结果源。

4

1 回答 1

1

我在同一个地方被难住了一段时间。在查询中添加精炼过滤器对我和我所处的情况很有帮助。可能对你也有用。

    // add refiner(s)
    keywordQuery.set_refiners("SPSiteURL");

    // add the returned columns
    var properties = keywordQuery.get_selectProperties();
    properties.add('SPWebUrl');                 // site this comes from

    // below is how to build the refinement filter to add to the keywordquery
    var filterCollection = keywordQuery.get_refinementFilters();

    // add scope filter, can be mannualy or can grab the webUrl from the client context
    // var filter = Modifier + ':"' + RefinementToken(or value) + '"';
    filterCollection.add('SPSiteURL:"'+webUrl+'"');
于 2018-05-16T14:49:28.570 回答