Как прикрепить обработчик событий к определенному списку в SharePoint? - PullRequest
0 голосов
/ 17 марта 2011

Я уже читал этот вопрос как прикрепить получатель событий к пользовательскому списку в sharepoint? но у меня есть сомнения.

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

И, если он должен быть установлен, какой ListTemplateId я должен использовать в elements.xml функции события?

Заранее спасибо

Ответы [ 3 ]

1 голос
/ 17 марта 2011

Вам нужно только развернуть решение для получателя вашего события.Это делает код доступным для присоединения к списку.

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

using (SPSite site = new SPSite(url))
{
    using (SPWeb siteWeb = site.OpenWeb())
    {
         SPList list = siteWeb.Lists["TheList"];

         SPEventReceiverDefinition defItemAdding = list.EventReceivers.Add();

         defItemAdding.Assembly = "MyEventHandlerProject, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=placeTokenHere";
         defItemAdding.Class = "MyEventHandlerProject.ClassName";
         defItemAdding.Name = "ItemAdding Event";
         defItemAdding.Type = SPEventReceiverType.ItemAdding;
         defItemAdding.SequenceNumber = 1000;
         defItemAdding.Synchronization = SPEventReceiverSynchronization.Synchronous;

         defItemAdding.Update();

}}

И все готово!

1 голос
/ 17 марта 2011

Получатель события является определением.Определение отображается на сборку и экземпляр класса.Использование функции декларативного связывания приемника событий (указание listtemplateid) выполняется при использовании шаблонов списков.Когда вы присоединяетесь к определенному списку на основе не уникального типа списка, вы обычно используете объектную модель.Например, использование TemplateTypeID = '104' связывает все списки с этим типом шаблона.

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

Надеюсь, это имеет смысл.

0 голосов
/ 23 октября 2013

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

http://ceprogrammingnotebook.blogspot.sg/2013/10/attaching-event-handler-to-sharepoint.html

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