我正在使用 elastisSearch ( id="Elasticsearch.Net" version="1.5.0" targetFramework="net45")
和 NESTclient {{1}创建具有搜索功能的 asp.net webapi 应用程序}。
我设法得到基本的搜索,但它只搜索完整的单词。我的意思是,如果我搜索这个术语,“上帝就是好”,它将返回与“好”,“上帝”,有时“是”相匹配的所有结果。有人可以指导我如何编写一个可以通过以下术语返回结果的查询,“go”,“goo”,“good请,“goodz”甚至前缀匹配,请突出显示所有结果。我将如何使用 typehead.js 和 bloodhood.js 来返回建议?
这是我到目前为止的实现
SearchPaper类
(id="NEST" version="1.5.0" targetFramework="net45")
索引
public class SearchPaper
{
public string Id { get; set; }
public string UnitName { get; set; }
public string Course { get; set; }
public string UnitCode { get; set; }
public string School { get; set; }
public string ApplicationUser { get; set; }
public string Description { get; set; }
}
搜索
var paper = new SearchPaper
{
Id = newPaper.PastPaperID,
School = newPaper.School,
UnitName = newPaper.UnitName,
UnitCode = newPaper.UnitCode,
Course = _ctx.Courses.Find(newPaper.CourseID).Name,
ApplicationUser = _ctx.Users.Find(newPaper.ApplicationUserId).UserName,
Description = newPaper.Description
};
var index = client.Index(paper, i => i
.Index("epa")
.Type("paper")
.Id(newPaper.PastPaperID)
.Refresh()
.Ttl("1m")
);
如果有人可以帮我解决这个问题,我真的很感激...