Solrnet:如何在.net中使用QueryelevationComponent?

时间:2011-11-08 01:05:13

标签: solr solrnet

我正在使用SolrNet进行网站搜索。但是,现在我需要在顶部显示一些特定查询的文档。我查看了查询提升手册http://wiki.apache.org/solr/QueryElevationComponent并相应地设置了solrconfig.xml。手册中提到的调试URL工作得很好。

我只是不知道如何在Solrnet中使用Query提升组件。我在SolrNet wiki中找不到任何代码示例,它展示了如何使用elevate.xml。任何例子,建议都将受到高度赞赏。

2 个答案:

答案 0 :(得分:2)

根据wiki上的QueryElevatorComponent文档,您可以使用一些选项来启用它以与SolrNet客户端一起使用。

  1. 您可以将以下参数添加到SolrNet客户端查询中,告诉Solr使用提升RequestHandler而不是默认值。

    solr.Query("ipod", new QueryOptions {
         ExtraParams = new Dictionary<string, string> {
            {"qt", "elevate"}
         }
     });
    
  2. 修改solrconfig.xml文件中的默认请求处理程序,将elevate组件添加为last-component。下面是Solr分发示例文件附带的solrconfig.xml的修改版本。 注意:这假定您已按照Wiki页面中的定义定义了电梯searchcComponent。

    <requestHandler name="search" class="solr.SearchHandler" default="true">
       <!-- default values for query parameters can be specified, these
       will be overridden by parameters in the request
        -->
      <lst name="defaults">
        <str name="echoParams">explicit</str>
        <int name="rows">10</int>
      </lst>
    
      ...
    
      <arr name="last-components">
        <str>elevator</str>
      </arr>
    </requestHandler>
    

答案 1 :(得分:1)

您无需在客户端(即在SolrNet中)执行任何操作即可激活此功能。它是纯服务器端配置和激活的。