Недавно мы обновились до Sitecore 6.6 и столкнулись с проблемами, связанными с функциями поиска и сканирования от Lucene, так как 6.6 использует более новую версию и некоторые из методов/функций устарели.Проблема с обновлением Sitecore 6.6 и Lucene
Код, используемый для работы с предыдущей версией Lucene.NET 2.3, но не работает в 2.9. Можете ли вы сказать нам, что мы делаем неправильно, и помочь нам исправить эту часть кода? Ошибка мы получаем во время компиляции является
`Lucene.Net.Search.IndexSearcher` does not contain a definition for 'Search'
and no extension method 'Search' accepting a first argument of type
`Lucene.Net.Search.IndexSearcher` could be found (are you missing a using
directive or an assembly reference?)
Эта ошибка происходит на этой линии - Sitecore.Search.SearchHits hits = new SearchHits(context.Searcher.Search(query,sort));
. Я предполагаю, что это будет простое исправление, но я не уверен, как это исправить.
private static SearchResultCollection GetSearchResults(Query query, Sort sort, int startingIndex, int getCount, out int totalHits)
{
SearchResultCollection retVal = new SearchResultCollection();
Sitecore.Search.Index searchIndex = Sitecore.Search.SearchManager.GetIndex("content");
using (Sitecore.Search.IndexSearchContext context = searchIndex.CreateSearchContext())
{
Sitecore.Search.SearchHits hits = new SearchHits(context.Searcher.Search(query,sort));
totalHits = hits.Length;
//since index is zero based... adjust the numbers
startingIndex = (startingIndex - 1) * getCount;
getCount = (getCount > totalHits || totalHits < startingIndex + getCount)
? hits.Length - startingIndex : getCount;
retVal = hits.FetchResults(startingIndex, getCount);
}
return retVal;
}
Благодаря
Сделано изменение. Ложись! :) – Gabbar
С вашим кодом, я получаю следующую ошибку - Недопустимое значение сдвига в префиксе Кодированная строка (закодированное значение действительно INT?) – Gabbar
Любая stacktrace? Просто нашел на google парня, у которого была такая же проблема, как и вы и его ответ: «Я индексирую double для поля Numeric, но мой Sortfield был настроен как float». –