Umbraco Examine - как отсортировать результаты поиска? - PullRequest
1 голос
/ 11 марта 2011

Я пытаюсь отсортировать результаты поиска по пользовательскому свойству Umbraco, которое я создал - назовем его sortDate .

Внутри моего IndexSet, в config/ExamineIndex.config У меня есть это:

<IndexUserFields>
        <add Name="sortDate" EnableSorting="true" Type="DateTime" />
        ...

В своем пользовательском элементе управления поиском я создаю criteria и filter и использую их для поиска следующим образом:

var criteria =
      ExamineManager.Instance.SearchProviderCollection["MySearcher"].CreateSearchCriteria(
                UmbracoExamine.IndexTypes.Content);

var filter =
      criteria.GroupedOr(new string[] { "sortDate", "someThing", "someThingElse", "bodyText" }, SearchTerm.ToLower()).Compile();

var MySearchResults =
      ExamineManager.Instance.SearchProviderCollection["MySearcher"].Search(filter).Distinct();

Полагаю, мне нужно добавить что-то, чтобы указать, как Lucene должен сортировать это на моем фильтре?

Это Umbraco 4.6.1, если это имеет значение:)

1 Ответ

3 голосов
/ 11 марта 2011

ОК, не знаю, как я это пропустил, но похоже, что вы можете просто сделать:

filter.OrderBy( new string[] { "sortDate" } );
...