您好我们如何使用Sitecore中的Lucene.net搜索项目名称(http://screencast.com/t/vRAUNgQN)并按点击排序搜索。
答案 0 :(得分:2)
这不应该是一个问题,因为有很多资源可供选择。这是我的搜索转到的地方:
http://www.sitecore.net/learn/blogs/technical-blogs/sitecore-7-development-team.aspx
我会给你带来疑问,让你开始。
如果您使用的是Sitecore 7及更高版本,则可以使用Linq样式搜索。
using (var context = new ContentSearchManager.GetIndex("indexname").CreateSearchContext())
{
IQueryable<SearchResultItem> query =context.GetQueryable<SearchResultItem> ().Where(p=> p["name"].Equals("John"));
}
然后你可以打电话
SearchResults<SearchResultItem> results = query.GetResults();
这将有一个点击集合
foreach (var hit in results.Hits)
{
hit.Document.Id;
var relevance = hit.Score;
........
每次点击都会有一个Score属性来确定相关性(见上文) - 你应该可以按此排序。默认情况下,我认为无论如何都要通过relvance来排序。您可以使用查询中的Boost功能更改relvency。
对于Sitecore 6.6
我是高级数据库爬虫模块的忠实粉丝 - 它为位于标准搜索API之上的搜索逻辑提供了一个不错的包装。
http://sitecoresupport.blogspot.co.uk/2013/05/advanced-database-crawler-sitecore.html
请记住,如果升级到7,则此模块存在兼容性问题。
或者您可以使用标准的Sitecore搜索API
我确定你会把剩下的事情搞清楚