gpt4 book ai didi

elasticsearch - 将.keyword附加到NEST elasticsearch查询中的字段名

转载 作者:行者123 更新时间:2023-12-02 22:46:09 26 4
gpt4 key购买 nike

想象一下,我的查询为:

.Query(query =>
query.Bool(b => b.Must(m =>
m.Wildcard(w => w.Field(f => f.userName).Value(string.Format("*{0}*", searchModel.username).Suffix("keyword")))
)));

输出查询(来自DeubgInformation)将类似于:
{
"query": {
"bool": {
"must": [{
"wildcard": {
"userName": "*alex*"
}
}
],
"must_not": [],
"should": []
}
}
}

这怎么行不通。它需要在用户名末尾附加“.keyword”。下面的查询有效,但是我无法通过NEST生成它:
{
"query": {
"bool": {
"must": [{
"wildcard": {
"userName.keyword": "*alex*"
}
}
],
"must_not": [],
"should": []
}
}
}

任何想法如何使NEST在字段名称的末尾添加“.keyword”? (当然以流利的方式,否则 w.Field("userName.keyword")可以工作)

最佳答案

Suffix()调用需要成为成员访问表达式的一部分

.Query(query => query
.Bool(b => b
.Must(m => m
.Wildcard(w => w
.Field(f => f.userName.Suffix("keyword"))
.Value(string.Format("*{0}*", searchModel.username)
)
)
)
));

关于elasticsearch - 将.keyword附加到NEST elasticsearch查询中的字段名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46006742/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com