问题描述
||
我知道我需要添加以下代码以将其更改为dismax。
ExtraParams = new Dictionary<string,string> { {\"qt\",\"dismax\"} }
但是,如何传递\“ qf \”值?我无济于事:
new Dictionary<string,\"dismax\"},{\"qf\",\"field1 field2\"} }
和
var matchingItems = solr.Query(new LocalParams {{\"type\",\"field1 field2\"}}
+ BuildQuery(parameters) ...
即使仅通过ExtraParams,我也会收到404错误的请求。
这是记录的查询
局部参数+ Extraparams
GETting \'q={!type=dismax qf=\'field1 field2\'}query text,start=0,rows=10,spellcheck=true,facet=true,facet.field=especialidadefacet,f.especialidadefacet.facet.mincount=1,facet.field=tipofacet,f.tipofacet.facet.mincount=1,facet.field=estadofacet,f.estadofacet.facet.mincount=1,qt=dismax\' from \'/select\'
只有额外的参数
GETting \'q=query text,qt=dismax\' from \'/select\'
解决方法
qt
参数选择一个请求处理程序。因此,如果您没有名为\'dismax \'的请求处理程序,并且定义了qt=dismax
,则会得到404。
因此,要么定义qt = dismax和一个\'dismax \'请求处理程序,要么通过LocalParams使用dismax查询解析器。
,(回复很晚,但值得在这里登陆的人)
尝试使用局部参数,结果将类似于:
solr.Query(new LocalParams {{\"type\",\"dismax\"},{\"qf\",\"myfield\"}} + new SolrQuery(\"solr rocks\"));
在以下位置查看LocalParams部分:
https://github.com/mausch/SolrNet/blob/master/Documentation/Querying.md