有没有办法让 NEST 支持通配符字段。例如。
我有这样的课:
public class SearchDocument
{
public string Id { get; set; }
public string Symbol { get; set; }
public IList<DisorderData> Disorders { get; set; }
}
public class DisorderData
{
public string Name { get; set; }
public string Category { get; set; }
}
我可以像这样轻松地构造一个 json 查询:(取自:http ://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html )
{
"query_string" : {
"fields" : ["disorders.*"],
"query" : "cancer"
}
}
如果我在 NEST 中执行以下操作:
client.Search<SearchDocument>(x => x
.Query(q => q
.QueryString(qs => qs
.OnFields(document => document.Disorders)
.Query("cancer"))));
它解决:
{
"query_string" : {
"fields" : ["disorders"],
"query" : "cancer"
}
}
关于如何在现场获得通配符的任何想法?
也许有一个类可以将属性名称解析为字符串,然后我可以连接星号。