SharePoint 2010: как программно получить строку подключения к социальной базе данных - PullRequest
0 голосов
/ 08 октября 2011

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

Попытка создания экземпляра частного класса SocialDatabase, но ничего не получилось, потому что sdb.ConnectionString выглядело нулевым (весь объект выглядел обезвоженным и не мог понятькак заполнить).

Assembly up = Assembly.LoadFile(@"C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI\Microsoft.Office.Server.UserProfiles.dll");
object sdb = up.CreateInstance("Microsoft.Office.Server.Administration.SocialDatabase", true,
                    BindingFlags.InvokeMethod | BindingFlags.CreateInstance,
                    null, null, CultureInfo.InvariantCulture, null);

Идеи приветствуются.Спасибо!

1 Ответ

1 голос
/ 10 октября 2011

Должно быть полностью выполнимым.Одним из способов решения этой проблемы является запуск с объекта SPFarm и получение набора служб.

SPFarm farm = SPFarm.Local;
SPServiceCollection services = farm.Services;

, который будет содержать коллекцию объектов SPService для вашей фермы.Их будет много на ферме, на которой работает множество служб.Распечатка .Name и .TypeName каждого объекта SPService быстро предоставит вам схему для нахождения правильного экземпляра SPService.

Затем необходимо выполнить обход API конкретного класса, реализующего социальные данные.чтобы найти правильное свойство, которое будет возвращать нужный объект SPDatabase.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...