У меня есть объект IQueryable<T>
в качестве результатов поиска объект. Я применяю фильтрацию и сортировку по этому объекту поиска.Заказ Результаты поиска Sitecore
Прежде чем позвонить по телефону GetResults()
, я хочу, чтобы заказать результаты, основываясь на этом значении (Fieldname - Priority
). Поэтому для всех элементов в объекте IQueryable<T>
я хочу заказать их по полю Priority, поэтому все элементы, которые имеют значение для этого поля, остаются в верхней части, а остальные находятся внизу.
У меня есть запись fieldmap
для поля Priority.
search.OrderByDescending(i => !string.IsNullOrEmpty(i.GetItem().GetFieldValue("Priority")))
Вышеуказанная команда не работает. По-видимому, я не могу использовать методы расширения Sitecore с помощью IQueryable?
Если я конвертирую search.ToList()
. Сделайте заказ, а затем преобразовать его обратно в AsQueryable()
, я получаю следующее сообщение об ошибке:
There is no method 'GetResults' on type 'Sitecore.ContentSearch.Linq.QueryableExtensions'
that matches the specified arguments
Есть ли аккуратный и быстрый способ обойти это?
Приветствия
'Я применяю фильтрацию и сортировку по этому объекту поиска' - Вы сортируете по нескольким полям? например Название и приоритет? – jammykam
@jammykam - вроде да. Сначала я сортирую их по критериям, выбранным пользователем - например, Name, Date created и т. Д. После того, как я верну результаты, мне нужно заказать их по полю приоритета. – NomadTraveler
Вы подкачки результатов или можете заказать после получения результатов? –