我正在尝试仅过滤搜索结果,我想动态添加多个过滤器。
我的过滤器是字段名称和字段值的列表
例如
public class filter
{
public string val{ get; set; }
public string field{ get; set; }
}
我到达需要添加后置过滤条件的那一部分,但是我不知道如何构造它。
List<TermQuery> tl = new List<TermQuery>();
foreach (var item in filters)
{
TermQuery t = new TermQuery();
t.Field = item.field;
t.Value = item.val;
tl.Add(t);
}
var catSearch= client.Search<dynamic>(s => s.From(from).Size(20).Source(x => x.Query(
q => q.Bool(
b => b.Must(
l => l.Terms(
t => t.Name("KEYWORDS").Field("KEYWORDS").Terms(terms)))).PostFilter(f => f.Terms(l=> {
//Need to add values and field names to post filter here
//Add tl here as the post filters
return l;
})));
我看过here,但我仍然不明白如何动态添加帖子过滤器
请帮助我动态构建帖子过滤器。
谢谢。