Nest elasticsearch嵌套通配符字段
有没有办法让嵌套支持通配符字段。比如说 我有一门课是这样的:Nest elasticsearch嵌套通配符字段,nest,elasticsearch-net,Nest,elasticsearch Net,有没有办法让嵌套支持通配符字段。比如说 我有一门课是这样的: public class SearchDocument { public string Id { get; set; } public string Symbol { get; set; } public IList<DisorderData> Disorders { get; set; } } public class DisorderData
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; }
}
如果我在NEST中执行以下操作:
client.Search<SearchDocument>(x => x
.Query(q => q
.QueryString(qs => qs
.OnFields(document => document.Disorders)
.Query("cancer"))));
关于如何在野外使用通配符有什么想法吗
也许有一个类可以将属性名解析为字符串,然后我可以连接asterik 您可以使用
后缀
扩展名,将
和给定字符串(在本例中为*
)附加到字段末尾:
client.Search<SearchDocument>(x => x
.Query(q => q
.QueryString(qs => qs
.OnFields(document => document.Disorders.Suffix("*"))
.Query("cancer"))));
client.Search(x=>x
.Query(q=>q
.QueryString(qs=>qs
.OnFields(document=>document.Disorders.后缀(“*”)
.查询(“癌症”);
另外,请记住,始终可以将字段名作为字符串而不是对象路径传递:
client.Search<SearchDocument>(x => x
.Query(q => q
.QueryString(qs => qs
.OnFields(new string[] { "disorders.*" })
.Query("cancer"))));
client.Search(x=>x
.Query(q=>q
.QueryString(qs=>qs
.OnFields(新字符串[]{“disorders.*})
.查询(“癌症”);
client.Search<SearchDocument>(x => x
.Query(q => q
.QueryString(qs => qs
.OnFields(document => document.Disorders.Suffix("*"))
.Query("cancer"))));
client.Search<SearchDocument>(x => x
.Query(q => q
.QueryString(qs => qs
.OnFields(new string[] { "disorders.*" })
.Query("cancer"))));