Доброго времени суток,
Дано
SharePoint Server 2010 наполненный профилями пользователей. В профилях есть дополнительные не стандартные поля.
Задача
Сделать форму поиска пользователей по профилям. При этом поиск может осуществляться как
— по некоторым стандартным полям
— так и по дополнительным не стандартным полям
Вывода результатов поиска в своем (не стандартном) дизайне.
Например:
— найти всех пользователей фамилия которых начинается на "Ивано" и в поле "department" указано "бухгалтерия".
— найти всех пользователей у которых день рождение в мае.
Подскажите пожалуйста куда смотреть, что читать для реализации такой задачи.
Сейчас вижу такие варианты:
1. В SharePoint Server 2010 есть служба "Поиск Sharepoint Server", с помощью которой можно осуществлять поиск пользователей.
Насколько я понял есть возможность искать пользователей по заданным атрибутам.
Например: department:"бухгалтерия"
1.1. Где описан язык поисковых запросов (если он существует)
И, вроде бы, можно настроить поиск и по дополнительным не стандартным полям в профилях пользователей (
SharePoint User Profile Custom Properties Keyword Search Problem,
people search: use a custom ranking model to search in added profile properties).
1.2. Можно ли взаимодействовать с сервисом поиска напрямую не через стандартную веб-часть поиска?
2. Попробовать использовать объектную модель или сервисы Sharepoint.
2.1. Какие объекты или сервисы можно использовать?
UserProfileManager есть метод Search, но с его помощью видимо нельзя построить реальный поисковой запрос. Если можно, подскажите как.
ProfileSearchManager.Search — не понятно как использовать, нет примеров.
User Profile Service Web Service — не нашел методов с помощью которых можно осуществлять поиск.
3. Делать прямые SQL запросы в базу данных портала.
Спасибо.