2015-04-28 1 views
0

Я работаю над сайтом, созданным в Telerik Sitefinity 7, и вам нужно настроить виджет SearchResults, чтобы я мог фильтровать страницы, которые он выбирает для отображения для разных частей сайта , Я понимаю, что для этого мне нужно создать пользовательский виджет, но мне сложно найти код поиска по умолчанию позади файла для его шаблона. Кто-нибудь знает, где я могу это найти, и, возможно, какие методы мне нужно переопределить для выполнения такой задачи (я знаю, что «Поиск» является одним из них, но без возможности реализации через интерфейс в VS я потерял их имена или функции)?Не удается найти шаблон SearchResults.cs для Sitefinity 7

ответ

0

Я не уверен, если это относится к Sitefinity 7.0, но, надеюсь, это может немного помочь: http://docs.sitefinity.com/for-developers-customize-search-results-by-overriding-the-searchresults-class

Похоже, что вам нужно будет переопределить класс SearchResults (я думаю, что нашел в Telerik.Sitefinity. Services.Search.Web.UI.Public), а затем также реализовать интерфейс ISearchResultsBuilder, чтобы фактически вернуть результаты поиска, которые вы хотите. Я смог использовать Обозреватель объектов для просмотра методов, которые находятся в базовом классе SearchResults (но, очевидно, не о деталях реализации).

Раньше был SDK, но они прекратили его и быстро посмотрели в моем 6.0 SDK, он не включил код для файла для виджета SearchResults.

+0

Я попытался использовать код на этой странице, но я не могу найти пространство имен для ISearchResultsViewer. И реализация на их конце - это действительно тайна ха-ха. –

+0

Ах, извините:/В моем экземпляре Sitefinity 7.3 метод GetSearcher() фактически возвращает объект ISearcher (а не ISearchResultsBuilder, может быть, это вещь 8.0). ISearcher - это интерфейс в классе SearchResults. Но все же, к сожалению, нет деталей реализации. Вы можете получить код, если вы публикуете на своих форумах (у меня не было никакого опыта с этим) – chrisg

0

Последнее переопределение, что было сделано на поисковом виджете мы использовали:

using Telerik.Sitefinity.Services; 
using Telerik.Sitefinity.Services.Search; 
using Telerik.Sitefinity.Services.Search.Configuration; 
using Telerik.Sitefinity.Services.Search.Data; 
using Telerik.Sitefinity.Services.Search.Web.UI.Public; 

Эта коррекция началась в версии 7.0 и теперь работает в 8

Также я мог бы предложить использовать JustDecompile свой открытый и работает на моей машине каждый день, чтобы просмотреть dlls sitefnity

Смежные вопросы