Поделиться через


Поиск решений для SharePoint

Поиск в SharePoint сочетает в себе простоту настройки и развертывания с масштабируемостью и расширяемостью FAST Search Server на одной корпоративной поисковой платформе.

SharePoint включает в себя общие шаблоны на платформе поиска, которые помогут вам настроить поиск для различных сценариев. Например:

  • Поиск видео и поиск по беседам включены в качестве готовых вертикали поиска.
  • Страницы тем и поиск по содержимому расширяют возможности и сценарии управления веб-содержимым, такие как сайты, управляемые поиском, и сайты управления знаниями.
  • Мои задачи объединяют задачи проекта, чтобы пользователи могли отслеживать задачи, назначенные на нескольких сайтах в центральном расположении: их OneDrive для бизнеса сайте.

Архитектура поиска SharePoint

Архитектура поиска в SharePoint включает компоненты и базы данных, которые работают вместе.

Компоненты поиска в SharePoint

Компонент Описание
Обход контента Выполняет обход источников контента для сбора свойств и метаданных и отправляет эти сведения в компонент обработки содержимого.
Обработка контента Преобразует обойденные элементы и отправляет их в компонент индексирования.
Этот компонент также сопоставляет свойства для обхода с управляемыми свойствами.
Обработка аналитики Выполняет анализ поиска и использования.
Указатель Получает обработанные элементы из компонента обработки контента и записывает их в индекс поиска.
Кроме того, этот компонент обрабатывает входящие запросы, получает информацию от поисковых индексов и отправляет набор результатов обратно компоненту обработки контента.
Обработка запросов Анализирует входящие запросы. Это помогает оптимизировать точность, отзыв и релевантность.
Запросы отправляются в компонент индексирования, который возвращает соответствующие наборы результатов поиска.
Администрирование поиска Запускает системные процессы поиска, а также добавляет и инициализирует новые экземпляры компонентов поиска.

Поиск баз данных в SharePoint

База данных Описание
Обход контента Хранит данные отслеживания и накопленные сведения об обойденных элементах, таких как документы и URL-адреса.
В нем также хранятся такие сведения, как время последнего обхода контента, идентификатор последнего обхода контента и тип обновления (добавление, обновление, удаление) во время последнего обхода контента.
Ссылка Хранит необработанные данные, извлеченные компонентом обработки контента, а также сведения об использовании результатов поиска.
Компонент обработки аналитических данных анализирует эти данные.
Аналитические отчеты Сохраняет результаты анализа использования.
Администрирование поиска Сохраняет данные конфигурации поиска.

Обход и обработка контента

Процесс обхода контента начинается с различных источников содержимого (например, HTTP, общих папок и SharePoint). Для добавления содержимого в индекс средство-обходчик использует соединители, которые сообщают обходчику, как подключиться к источнику контента и получить доступ к элементам содержимого в источнике. После того как средство-обходчик нашел элементы содержимого, он использует применимый обработчик формата для анализа содержимого.

После получения содержимого компонент обхода передает элементы для обхода в компонент обработки содержимого, который обрабатывает элементы и отправляет их в компонент индекса. Сюда входят анализ документов, сопоставление свойств для обхода с связанными управляемыми свойствами, а также обработка лингвистики, например обнаружение языка и извлечение сущностей. Он также записывает сведения о ссылках и URL-адресах в базу данных ссылок.

Обработка запросов

Компонент обработки запросов анализирует и обрабатывает поисковые запросы для оптимизации точности, отзыва и релевантности, включая обработку лингвистики, такую как разбиение по словам и ствол. Затем обработанный запрос отправляется в компонент индекса, который возвращает результирующий набор на основе обработанного запроса компоненту обработки запроса, который, в свою очередь, обрабатывает этот результирующий набор.

Аналитика поиска

SharePoint анализирует как само содержимое (аналитика поиска), так и способ взаимодействия пользователей с ним (аналитика использования), и использует эту информацию для улучшения поиска.

Анализ поиска позволяет извлечь такую информацию, как ссылки, число щелчков элемента, текст привязки, данные, связанные с пользователями, и метаданные, из базы данных ссылок. Аналитика поиска формирует основу для определения релевантности.

Аналитика использования, с другой стороны, связана с анализом сведений журнала использования, полученных из внешнего интерфейса через хранилище событий. Аналитика использования формирует основу отчетов об использовании и статистике.

Результаты анализа будут добавлены в элементы индекса поиска. Кроме того, результаты анализа использования хранятся базе данных отчетов анализа.

Стандартные блоки для настройки интерфейса поиска

Поиск в SharePoint и SharePoint Online включает новые функции и улучшения, которые позволяют настраивать интерфейс поиска. Многие из этих улучшений не требуют написания кода. Поиск SharePoint включает CSOM и REST API, которые помогут вам написать код для настройки или создать надстройки для доступа к результатам поиска SharePoint за пределами SharePoint.

Новые функции и улучшения включают следующие:

  • Сайт центра поиска
  • Веб-части центра поиска
  • источники результатов.
  • правила запросов;
  • Преобразования запросов
  • Типы результатов и шаблоны отображения

Сайт центра поиска

Центр поиска — это сайт SharePoint, настроенный для поиска. Это портал, на котором можно искать содержимое в интрасети организации и предоставляет централизованный и настраиваемый пользовательский интерфейс. В этом разделе описываются страницы и веб-части Центра поиска, а также параметры конфигурации поиска, которые можно изменить для создания пользовательских приложений поиска или возможностей поиска без написания большого количества кода.

При создании сайта центра поиска SharePoint создает домашнюю страницу поиска по умолчанию и страницу результатов поиска по умолчанию. Кроме того, также создается ряд страниц, называемых вертикалями поиска. Вертикали поиска — это страницы результатов поиска, которые настраиваются для поиска определенных типов контента, таких как Люди и видео, и отображают результаты поиска, отфильтрованные и отформатированные для определенного типа контента или класса.

В семействе веб-сайтов Центра поиска в библиотеке Pages создаются следующие страницы:

  • default.aspx — домашняя страница центра поиска и страница, на которой конечные пользователи вводят свои запросы.
  • results.aspx — страница результатов поиска по умолчанию для центра поиска. Эта страница также является страницей результатов поиска для вертикали поиска Все.
  • peopleresults.aspx — страница результатов поиска для Люди вертикали поиска.
  • conversationresults.aspx — страница результатов поиска для вертикали поиска бесед .
  • videoresults.aspx — страница результатов поиска для вертикали поиска видео .
  • advanced.aspx — страница поиска, на которой пользователи могут применять ограничения к поисковым фразам, например ограничить поиск точной фразой.

Все вертикальные страницы поиска содержат веб-часть "Результаты поиска", хотя она настроена по-разному для каждой вертикали поиска. Для каждого из них запрос в веб-части "Результаты поиска" направляется к определенному источнику результатов, применимому к этой вертикали поиска. Например, запрос в веб-части "Результаты поиска" на странице peopleresults.aspx ограничен источником результатов "Локальные Люди результаты". Понимание настройки вертикали поиска по умолчанию в SharePoint поможет вам создать собственную вертикальную вертикальную или настроить центр поиска.

Ниже приведены дополнительные ресурсы, которые помогут вам работать с центром поиска.

Веб-части центра поиска

Страницы Центра поиска содержат четыре типа веб-частей: поле поиска, результаты поиска, навигация по поиску и уточнение.

Веб-часть "Поле поиска"

В веб-части Поле поиска отображается текстовое поле, в котором пользователи вводит текст для поиска. По умолчанию веб-часть поля поиска используется на домашней странице центра поиска (default.aspx), а также на всех страницах результатов поиска по умолчанию (results.aspx, peopleresults.aspx, conversationresults.aspx и videoresults.aspx).

Веб-часть "Поле поиска" можно настроить, изменив свойства в области инструментов веб-части. Это позволяет выполните следующее:

  • Измените место отображения результатов поиска. Например, можно отобразить результаты в пользовательской веб-части "Результаты поиска" или на странице результатов пользовательского поиска.
  • Отключить отображение предложений запроса и рекомендации пользователей.
  • Отображение ссылок на страницу предпочтений поиска и страницу расширенного поиска.
  • Измените шаблон отображения для веб-части.

Дополнительные сведения см. в разделе:

Веб-часть "Результаты поиска"

Веб-часть "Результаты поиска" отображает результаты поискового запроса. По умолчанию веб-часть "Результаты поиска" используется на всех вертикальных страницах поиска по умолчанию (results.aspx, peopleresults.aspx, conversationresults.aspx и videoresults.aspx). Веб-часть "Результаты поиска" также отправляет результаты поиска в веб-части Уточнения и навигации по поиску, поэтому на странице результатов поиска должна быть веб-часть, чтобы другие веб-части поиска работали.

Вы можете изменить свойства веб-части "Результаты поиска" в области инструментов веб-части, чтобы изменить поисковый запрос, а также изменить поведение и внешний вид результатов на странице результатов поиска.

Изменив значения свойств, можно сделать следующее:

  • Измените источник результатов, чтобы указать, какое содержимое следует искать.
  • Добавьте переменные запроса или фильтры свойств, чтобы настроить результаты поиска для разных пользователей или групп пользователей.
  • повысить или понизить уровень элементов или страниц в пределах результатов поиска;
  • изменить сортировку результатов поиска;
  • изменить шаблон отображения.

Дополнительные сведения о веб-частях результатов поиска см. в следующих разделах:

Веб-часть навигации поиска

В веб-части навигации по поиску отображаются ссылки, позволяющие пользователям быстро перемещаться между различными вертикали поиска (все, Люди, беседы и видео). Веб-часть навигации по поиску использует результаты поиска из веб-части "Результаты поиска", чтобы при выборе пользователями вертикальной ссылки поиска результаты поиска фильтрулись и отображались в соответствии с настройкой вертикали поиска.

Изменив свойства веб-части Навигация поиска в области инструментов веб-части, вы можете настроить веб-часть следующим образом:

  • Укажите другую веб-часть, из которой будут получаться результаты.
  • Измените количество вертикальных ссылок поиска для отображения.
  • Измените внешний вид и макет веб-части.

Кроме того, на ленте можно выбрать Параметры сайта> Параметрыпоиска, чтобы внести следующие изменения:

  • Измените отображаемые имена ссылок.
  • Измените порядок ссылок.

Веб-часть уточнения

Веб-часть Уточнения фильтрует результаты поиска по категориям, называемым уточнениями. Пользователи могут выбирать эти уточнения, чтобы сузить результаты поиска. Уточнение — это управляемые свойства, помеченные как уточняемые и запрашиваемые. Дополнительные сведения об этих параметрах см. в статье Общие сведения о параметрах управляемых свойств в статье Обзор схемы поиска в SharePoint Server.

Вы можете изменить свойства веб-части Уточнение в области инструментов веб-части, чтобы указать следующее:

  • Какая веб-часть "Результаты поиска" следует фильтровать результаты поиска.
  • Уточнение, используемое в веб-части Уточнения.
  • Шаблон отображения, применяемый к каждому уточнению.
  • Внешний вид, макет и поведение веб-части Уточнения.

По умолчанию веб-часть Уточнения не показывает количество результатов для каждого значения уточнения. Количество уточнений можно добавить, изменив шаблон отображения для уточнения.

Дополнительные сведения об этой функции см . в разделе Настройка свойств веб-части Уточнения в SharePoint Server.

Дополнительные сведения о веб-части Уточнения и уточнениях см. в следующих разделах:

источники результатов.

Result sources limit searches to certain content or to a subset of search results. Источник результатов можно определить, указав следующее:

  • Поставщик поиска или исходный URL-адрес для получения результатов поиска; например, индекс поиска локального служба SharePoint.
  • Протокол, используемый для получения результатов поиска; например, протокол OpenSearch .
  • Преобразование запроса, которое может сузить результаты из заданного поставщика поиска или URL-адреса до определенного подмножества результатов; например, к набору результатов с определенным типом контента.

SharePoint предоставляет шестнадцать предварительно настроенных источников результатов, включая локальные результаты SharePoint, беседы и элементы, связанные с текущим пользователем. Сведения об источниках результатов можно просмотреть на странице Управление источниками результатов (Параметры> сайта.Источники результатовпоиска>).

На странице Управление источниками результатов можно создать новые источники результатов двумя способами:

  • Выберите Новый источник результатов и выберите нужный источник результатов. Дополнительные сведения см. в статье Настройка источников результатов для поиска в SharePoint Server.
  • Наведите указатель мыши на стрелку рядом с существующим источником результатов, выберите Копировать, а затем измените копию при необходимости и сохраните ее с новым именем.

Источник результатов указывает один из четырех протоколов для получения результатов поиска. Если источник результатов использует протокол, отличный от локального SharePoint, источник результатов также должен указать URL-адрес для получения результатов поиска.

Протоколы источника результатов и их поставщики

Протокол источника результатов Поставщик URL-адрес
Локальные результаты SharePoint Индекс поиска локального служба . Недоступно
Удаленные результаты SharePoint Индекс поиска служба размещен в другой ферме. Адрес корневого семейства веб-сайтов удаленной фермы SharePoint.
OpenSearch 1.0/1.1 Внешний поставщик поиска (например, удаленная поисковая система или веб-канал), использующий протокол OpenSearch для предоставления результатов поиска. URL-адрес RSS-канала поставщика поиска, использующего протокол OpenSearch.
Exchange Веб-службы Exchange (EWS). URL-адрес EWS.

Дополнительные сведения см. в указанных ниже статьях.

правила запросов;

Используйте правила запросов, чтобы настроить интерфейс поиска для запросов, которые особенно важны для пользователей. В правиле запроса указываются контекст, условия и коррелированные действия. Затем в указанном контексте и когда запрос соответствует указанным условиям, поиск выполняет свои коррелированные действия для повышения релевантности результатов поиска.

Что касается контекста, можно ограничить запросы правил запросов, которые:

  • Выполняется в указанном источнике результатов.
  • Из указанной категории раздела.
  • Выполняется пользователем, соответствующим указанному сегменту пользователя.

В следующей таблице перечислены условия, которые можно указать, которые вызывают выполнение правила запроса.

Условия правила запроса

Условие Описание
Запрос точно соответствует ключевому слову Правило запроса применяется, когда запрос в точности соответствует слову или фразе, указанным вами.
Запрос содержит термин действия Правило запроса применяется, когда запрос содержит термин в виде отдельного слова или фразы, указывающих на то, что пользователь пытается что-то сделать.
Такой термин должен находиться в начале или конце запроса и может быть глаголом, командой или фильтром.
Запрос точно соответствует словарю Правило запроса применяется, когда запрос в точности соответствует записи словаря.
Эта запись может быть термином в банке терминов или записью в словаре человеческих имен.
Запрос, обычно используемый в источнике Примените правило запроса, если запрос пользователя чаще выполняется к другому источнику результатов, чем текущий.
В этом условии используется анализ введенных пользователями запросов в разных источниках результатов.
Тип результата часто используется для переходов Примените правило запроса, если запрос часто заканчивается, когда пользователи выбирают результаты определенного типа результата.
При создании нового типа результата можно указать, что эти выборы должны быть записаны для использования в правилах запросов.
Расширенное соответствие тексту запроса Правило запроса применяется, когда запрос совпадает с регулярным выражением.
Он также позволяет использовать варианты ключевое слово, термина действия и условий словаря, описанные ранее, но с более расширенным контролем.

Правило запроса может указывать три типа действий:

  • Добавьте повышенные результаты (ранее — Лучшие ставки), которые отображаются выше ранжированных результатов. Например, для запроса нетрудоспособности правило запроса может указать определенный результат повышения, например ссылку на сайт с заявлением о политике компании в отношении отгула.

  • Добавьте одну или несколько групп результатов, называемых блоками результатов. Блок результатов содержит небольшое подмножество результатов, связанных с запросом определенным образом. Как и отдельные результаты, вы можете повысить уровень блока результатов или ранжировать его с другими результатами поиска.

  • Измените ранжирование результатов, изменив запрос. Например, для запроса, содержащего панель элементов для скачивания, правило запроса может распознать слово download как термин действия и повысить результаты поиска, указывающие на конкретный сайт загрузки в интрасети.

Дополнительные сведения о правилах запросов см. в статье Управление правилами запросов в SharePoint Server.

Преобразования запросов

Чтобы предоставить результаты поиска, подходящие для пользовательского запроса, иногда запрос необходимо изменить. Это можно сделать с помощью преобразований запросов. Вертикали поиска по умолчанию, включенные в SharePoint, такие как Видео, Люди и Беседы, содержат предопределенные преобразования запросов для оптимизации поиска для этой вертикали.

Настраивать преобразования запросов можно в трех местах:

  • В веб-части, например в веб-части результатов поиска.
  • В правиле запроса, которое указывает, что определенные действия выполняются только при выполнении определенных условий.
  • В источнике результатов, который используется запросом для получения результатов поиска.

Пользовательский запрос преобразуется сначала веб-частью, затем любыми применимыми правилами запроса и, наконец, источником результата. При настройке преобразования в источнике результатов известно, что изменения преобразования не будут отменены или переопределены, так как источник результата преобразует запрос последним. Вы можете повторно использовать преобразование запроса источника результатов в веб-частях или блоках результатов, а также создавать правила запросов или типы результатов, которые применяются только к результатам из определенных источников результатов.

Построитель запросов можно использовать для создания и тестирования преобразований запросов. Запрос можно протестировать из построителя запросов, задав временные тестовые значения для переменных запроса, выполнив запрос и просмотр результатов поиска.

Дополнительные сведения о преобразованиях запросов см. в статье Планирование преобразования запросов и упорядочивание результатов в SharePoint Server.

Типы результатов и шаблоны отображения

Поиск SharePoint включает новую платформу результатов, которая упрощает настройку способа отображения результатов поиска. Теперь вместо написания пользовательского XSLT для изменения способа отображения результатов поиска можно настроить внешний вид важных типов результатов с помощью шаблонов отображения и типов результатов.

Типы результатов

Чтобы отобразить результаты поиска иначе, их следует отсортировать в соответствии с другими типами результатов. Тип результата — это классификация результатов поиска, которая отличает один результат поиска от другого. Он состоит из следующей коллекции:

  • Правила — одна или несколько характеристик или условий для сравнения каждого результата поиска, например источник результата или тип контента результата поиска. Условия правила может быть присоединен с помощью равенства, сравнения и логические операторы.

  • Свойства — список управляемых свойств для результата поиска. Прежде чем сопоставлять управляемое свойство с шаблоном отображения, необходимо добавить управляемые свойства в список свойств.

  • Шаблоны отображения — управляет тем, как отображаются и ведут себя все результаты, соответствующие условиям, на странице результатов поиска.

Поиск SharePoint включает несколько типов результатов по умолчанию. Чтобы просмотреть их, перейдите в раздел Параметры> сайтаТипы результатов поискаадминистрирования> семейства веб-сайтов. Изменить типы результатов по умолчанию нельзя. Вы можете создать новые типы результатов, скопировав существующие и изменив их.

Дополнительные сведения о типах результатов по умолчанию, включенных в SharePoint, см. в статье Типы результатов и шаблоны отображения, используемые для отображения результатов поиска в SharePoint Server.

Шаблоны отображения

Шаблоны отображения определяют визуальный макет и поведение результатов поиска. Они определяют, какие управляемые свойства отображаются в результатах поиска и как они отображаются. SharePoint сохраняет шаблоны отображения во вложенной папке Поиск папки Шаблоны отображения в коллекции эталонных страниц. Каждый шаблон отображения состоит из двух файлов.

  • HTML-версия шаблона отображения, которую можно изменить в редакторе HTML.
  • Файл .js, который использует SharePoint.

При работе с шаблонами отображения вы изменяете HTML-файл. Файл .js создается и изменяется SharePoint. Вы вообще не редактируете этот файл.

Существует два основных типа шаблонов отображения:

  • Шаблоны отображения элементов управления — определите общую структуру представления результатов.
  • Шаблоны отображения элементов — определите, как отображается каждый результат в наборе.

Шаблон отображения элемента управления предоставляет HTML для структурирования общего макета, используемого для отображения результатов поиска. Например, шаблон отображения элемента управления может предоставить HTML для заголовка, а также начала и конца списка. Шаблон отображения элемента управления отображается в веб-части только один раз.

Шаблон отображения элемента содержит HTML-код, который определяет способ отображения каждого элемента в результирующем наборе. Например, шаблон отображения элемента может предоставить HTML-код для элемента списка, содержащего рисунок и три строки текста, которые сопоставляются с различными управляемыми свойствами, связанными с элементом. Шаблон отображения элемента отображается один раз для каждого элемента в результирующем наборе. Если результирующий набор содержит 10 элементов, шаблон отображения элемента создает его HTML-раздел десять раз.

Дополнительные сведения о шаблонах отображения и их структуре см. в разделе:

Дополнительные сведения о шаблонах отображения, доступных в SharePoint, см. в статье Справочник по шаблонам отображения в SharePoint Server.

Настройка шаблонов отображения

Если вы хотите настроить шаблоны отображения, включенные в SharePoint, создайте новый шаблон отображения, скопировав содержимое из того, который вы хотите изменить, а затем настройте новую версию. Начиная с копии существующего шаблона отображения также самый простой способ создать новый, так как он гарантирует, что вы начинаете со всех необходимых элементов.

Еще один совет при работе с шаблонами отображения — сопоставить сетевой диск с коллекцией главных страниц. Дополнительные сведения см. в разделе Сопоставление сетевого диска с коллекцией главных страниц SharePoint.

HTML-файл, используемый для шаблона отображения, представляет собой полностью сформированный HTML-документ с head элементами и body . В элементе head есть элемент, указывающий title отображаемое имя для шаблона отображения. Текст в этом теге отображается при настройке в пользовательском интерфейсе SharePoint; например, при настройке типа результата.

title После элемента есть настраиваемый элемент свойств документа , mso:CustomDocumentProperties. В шаблонах отображения элементов этот элемент содержит mso:ManagedPropertyMapping элемент , где управляемые свойства, используемые поиском SharePoint, сопоставляются со значениями, используемыми шаблоном отображения.

Ниже приведен синтаксис для этого: <display template reference name>:<managed property name>, как показано в следующем примере.

<mso:ManagedPropertyMapping msdt:dt="string">'Title':'Title','Path':'Path','Description':'Description'

В элементе body есть элемент, в который script можно включить внешние ресурсы, такие как CSS-файлы или файлы JavaScript за пределами шаблона отображения. Примеры включения внешних ресурсов в элемент скрипта см. в разделе Блок скриптав шаблоне отображения SharePoint Design Manager.

Следующий элемент — это div элемент . Здесь вы размещаете любой НУЖНЫй HTML-код или скрипт в качестве части шаблона отображения. Хороший способ ознакомиться со структурой шаблона отображения — скачать копии шаблонов отображения по умолчанию для результатов поиска, Control_SearchResults.html (шаблон отображения элемента управления) и Item_Default.html (шаблон отображения элемента).

Ниже приведены некоторые дополнительные ресурсы для шаблонов отображения и типов результатов.

Api-интерфейсы запросов и надстройки поиска

Поиск SharePoint включает клиентские объектные модели .NET и JavaScript, а также службу REST, которая обеспечивает доступ к результатам поиска для разработки в Интернете, локальной и мобильной разработке.

API поисковых запросов

API Путь к библиотеке классов или схеме Пример
.NET CSOM Microsoft.SharePoint.Client.Search.dll

Пакет SDK с клиентскими компонентами для SharePoint Server 2013
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\15\ISAPI

Компоненты SDK клиента SharePoint Online
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\16\ISAPI
Поиск запросов с помощью управляемой клиентской объектной модели (коллекция кода)
JavaScript CSOM SP.search.js
%ProgramFiles%\SharePoint Client Components\Scripts
Поиск запросов с помощью клиентской объектной модели JavaScript (коллекция кода)
Служба REST http://server/_api/search/query

http://server/_api/search/postquery

http://server/_api/search/suggest
Использование службы поиска REST из надстройки SharePoint (коллекция кода)

Поиск запроса .NET CSOM

Чтобы использовать CSOM запроса .NET, создайте новый экземпляр класса T:Microsoft.SharePoint.Client.ClientContext , который находится в пространстве имен Microsoft.SharePoint.Client в Microsoft.SharePoint.Client.dll. Затем используйте объектную модель запроса в пространстве имен Microsoft.SharePoint.Search.Client.Query .

Ниже приведен простой пример.

using Microsoft.SharePoint.Client; 
using Microsoft.SharePoint.Client.Search.Query;
…
using (ClientContext clientContext = new ClientContext("http://intranet.contoso.com"))
{
    KeywordQuery keywordQuery = new KeywordQuery(clientContext);
    keywordQuery.QueryText = "Argument";
    SearchExecutor searchExecutor = new SearchExecutor(clientContext);
    ClientResult<ResultTableCollection> results = searchExecutor.ExecuteQuery(keywordQuery);
    clientContext.ExecuteQuery();
}
 

Теперь вы можете выполнять итерацию по результатам поиска. В следующем примере заголовок каждого результата записывается.

foreach (var row in results.Value[0].ResultRows) 
{ 
    Console.WriteLine(row["Title"]); 
}

Служба REST запросов поиска

Служба REST поисковых запросов поддерживает запросы HTTP POST и GET . При вызове службы ПОИСКА REST вы указываете параметры запроса вместе с запросом, и поиск использует эти параметры запроса для создания поискового запроса. Для запроса GET укажите параметры запроса в URL-адресе, для запросов POST передайте параметры запроса в тексте в формате нотации объектов JavaScript (JSON).

Запросы JSON GET и POST

Глагол URI
Запросы GET http://server/_api/search/query
Запросы POST http://server/_api/search/postquery

Пример запросов GET для службы ПОИСКА REST

Тип запроса URL-адрес запроса
Ключевые слова http://server/site/_api/search/query?querytext='{KQL Query}'
Выбор свойств http://server/site/_api/search/query?querytext='test'&selectproperties='Title,Rank'
сортировке; http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTime:descending'

http://server/site/_api/search/query?querytext='test'&sortlist='LastModifiedTime:descending,Rank:ascending'

Полный список доступных параметров запроса и способы их использования см. в статье Основы рабочего процесса SharePoint.

Пример кода см. в статье Использование службы поиска REST из надстройки SharePoint.

Поиск надстроек

Надстройки SharePoint (ранее известные как приложения для SharePoint) — это автономные функциональные возможности, расширяющие возможности веб-сайта SharePoint. Надстройки поиска (ранее известные как поисковые приложения) — это надстройки SharePoint, использующие функции поиска. В надстройке поиска можно использовать API поисковых запросов для получения результатов поиска. Кроме того, его можно использовать для распространения конфигураций поиска из одной установки SharePoint в другую.

Сведения о настройке среды разработки для создания надстроек поиска см. в разделах Настройка локальной среды разработки для надстроек SharePoint или Настройка среды разработки для надстроек SharePoint на Office 365.

Разрешения

Для надстроек поиска требуются только разрешения уровня пользователя, где значение атрибута — QueryAsUserIgnoreAppPrincipal. Это разрешение позволяет запрашивать поисковые надстройки на основе разрешений пользователя. Это означает, что результаты поиска возвращаются на основе списков управления доступом пользователя. Чтобы предоставить надстройкам разрешения на использование поиска, выполните следующие действия:

  1. В Обозреватель решений откройте AppManifest.xml.

  2. На вкладке Разрешения выберите Поиск области, а затем — QueryAsUserIgnoreAppPrincipal.

Дополнительные сведения см. в статье Разрешения для надстроек в SharePoint.

Интерфейсы API запроса

Для получения результатов поиска в надстройке поиска можно использовать CSOM .NET, CSOM JavaScript или службу REST поиска. В следующем примере показано, как использовать CSOM запроса .NET для получения результатов поиска в поисковой надстройке.

var spContext = SharePointContextProvider.Current.GetSharePointContext(Context);
using (var clientContext = spContext.CreateUserClientContextForSPHost())
{
    KeywordQuery keywordQuery = new KeywordQuery(clientContext);
    keywordQuery.QueryText = "Argument";
    SearchExecutor searchExecutor = new SearchExecutor(clientContext);
    ClientResult<ResultTableCollection> results = searchExecutor.ExecuteQuery(keywordQuery);
    clientContext.ExecuteQuery();
}

См. также