我在umbraco中创建了新的文档类型。然后在内容中通过此文档类型创建了一些节点。 我将设置一个新的搜索索引,因此找到了设置新搜索索引的代码。
@* Get the search term from query string *@
@{var searchTerm = Request.QueryString["search"];}
@{var results = ExamineManager.Instance.Search(searchTerm, true); }
但我不知道如何限制只能在我的文档类型中搜索的代码。
答案 0 :(得分:1)
这有几个步骤。
你必须:
ISearchCriteria
对象; 这可以编码为:
var criteria = ExamineManager.Instance.CreateSearchCriteria();
var expression = criteria.Field("nodeTypeAlias", "yourDocTypeAlias")
.And()
.Field("nodeName", searchTerm);
var results = ExamineManager.Instance.Search(expression.Compile());
这是可能的,因为当Umbraco发布节点时,它会将节点的docType别名保存到搜索索引中。
还有更多Examine documentation here。我还建议下载Luke,这是一个独立的工具,可以让你查看索引,这样你就可以看到Umbraco实际存储的内容。