是否可以在Lucene / RavenDb中执行查询(相关性搜索),它会自动搜索索引中的所有字段?
我有一个包含很多字段(40+)的索引,我想在任何地方搜索它。此外,一些领域已经应用了增强功能。
我理想的查询就是
red dog
这将返回按相关性排序的所有文档,其中包含这些关键字。
这是可能的,还是我必须添加一个包含40个字段中所有术语的手册字段?
答案 0 :(得分:0)
您必须有一个字段,其中包含您想要的所有字词。 另请参阅此处概述的技术:https://ayende.com/blog/153729/lazys-man-comprehensive-search-with-ravendb
public class Users_AllProperties : AbstractIndexCreationTask<User, Users_AllProperties.Result>
{
public class Result
{
public string Query { get; set; }
}
public Users_AllProperties()
{
Map = users =>
from user in users
select new
{
Query = AsDocument(user).Select(x => x.Value)
};
Index(x=>x.Query, FieldIndexing.Analyzed);
}
}