我正在使用NEST和ElasticSearch,我尝试通过允许用户在搜索框中键入搜索短语来进行搜索 . 除了用户输入他们需要的搜索短语以确保字段名称与弹性搜索中的字段名称相同的情况之外,一切正常 .
例如,我的一个字段叫做bookTitle . 如果他们搜索如下,那么它的工作原理
bookTitle:“双城记”
如果他们像下面的例子一样搜索它不起作用
书签:“双城记”书名:“双城记”
我用来搜索的代码如下 . 有没有人对如何解决这个问题有任何想法 . 我希望有一个ElasticSearch / NEST设置允许我这样做,而不是用搜索文本做一些丑陋的事情,比如查找“BookTitle”并替换为“bookTitle” .
public List Search(string searchterm) {
var results = _client.Search(s => s
.Query(q => q
.QueryString(qs => qs
.DefaultField("content")
.Query(searchterm)
)
));
return results.Documents.ToList();
}
任何帮助非常感谢 .