Как получать уведомления об изменениях в группах SharePoint. - PullRequest
4 голосов
/ 17 ноября 2008

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

Моя вторая попытка состояла в том, чтобы связать обработчик событий с типом контента SharePointGroup, но это тоже не сработало.

Так есть ли другие способы получать уведомления о событиях в группе SharePoint?

EDIT:

Спасибо за ответ.

Я забыл упомянуть, что уже гуглил и читал о списке информации о пользователях. К сожалению.

Сначала я нашел запись на форуме, где они публикуют относительный URL-адрес в списке информации о пользователе (_catalogs / users / simple.aspx). Когда я использую эту ссылку, чтобы увидеть список, он содержит только пользователей, а не группы. Я не знаю, но, возможно, эта ссылка выполняет некоторую фильтрацию в списке.

Другая информация, о которой я узнал в нескольких сообщениях в блогах и на форумах, заключалась в том, что обработчик событий, прикрепленный к списку информации о пользователях, не запускается. Я должен признать после прочтения, что он не работает так много раз и даже на MSDN (http://msdn.microsoft.com/en-us/library/aa979520.aspx), Я не пробовал самостоятельно.

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

Любые другие предложения, как получить информацию об изменениях в группах SharePoint?

Ответы [ 3 ]

2 голосов
/ 10 мая 2010

Действительно раздражает, что добавление или удаление из группы не имеет обработчика событий - лучшая работа, которую я нашел с помощью Google! это включить аудит.

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

            wssQuery = new SPAuditQuery(site);
            wssQuery.AddEventRestriction(SPAuditEventType.SecGroupMemberAdd);
            wssQuery.AddEventRestriction(SPAuditEventType.SecGroupMemberDel);
            wssQuery.SetRangeStart(startTime.AddMinutes(-16));
            auditCol = site.Audit.GetEntries(wssQuery);




            foreach (SPAuditEntry entry in auditCol)
            {
                    xml.LoadXml("<event>" + entry.EventData + "</event>");

                    int userId = Int32.Parse(xml.SelectSingleNode("/event/user").InnerText);
                    int groupId = Int32.Parse(xml.SelectSingleNode("/event/groupid").InnerText);

                    if (entry.Event == SPAuditEventType.SecGroupMemberAdd)
                    {
                       // Do Stuff
                    }

                    if (entry.Event == SPAuditEventType.SecGroupMemberDel)
                    {
                        // Do Stuff
                    }


             }

Это вызывает серьезную задержку между добавлением участника в группу и активацией события!

Я также не смог найти обработчик событий в аудите, поэтому кажется, что единственный вариант - циклический просмотр.

Это дорого для меня, так как у нас есть сотни семейств сайтов!

1 голос
/ 17 ноября 2008

Что вы имеете в виду, что такого списка нет для групп SharePoint? У вас есть список информации о пользователях, в котором находятся пользователи и группы SharePoint. Вы можете прикрепить приемники событий там и фильтровать по элементам. Например, вы можете фильтровать по идентификатору типа контента групп SharePoint, который равен 0x010b.

Также возможно подключение приемников событий к группам SharePoint. Что не сработало?

.b

0 голосов
/ 10 июля 2014

К сожалению, «События списка не генерируются в типе списка UserInformation». см .: http://msdn.microsoft.com/en-us/library/aa979520.aspx или обсуждение здесь: http://social.msdn.microsoft.com/Forums/en-US/ea2e06fb-63e1-4096-843c-413ddf33f24b/how-to-add-event-receivers-for-spgroup-in-sharepoint

Однако в случае SP 2013 есть решение: http://www.c -sharpcorner.com / UploadFile / anavijai / создать-groupuseradded-EVENT-приемник-в-Sharepoint-2013 /

...