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


Создание обработчика событий

Дата последнего изменения: 8 апреля 2010 г.

Применимо к: SharePoint Foundation 2010

Чтобы создать обработчик события SharePoint Foundation в Visual Studio, создайте новый проект библиотеки классов и класс с наследованием от одного из базовых классов приемников событий. При выборе базового класса приемника событий убедитесь, что базовый приемник событий подходит для соответствующего события и для узла событий, к которому требуется выполнить привязку.

В примере кода, указанном ниже, создается определение приемника событий с именем ItemAdded, которое использует и переопределяет методы в базовом классе SPItemEventReceiver. Данный базовый класс используется для перехвата событий, инициируемых при добавлении элементов в список. Если бы требовалось перехватывать события на уровне веб-сайта, нужно было бы выполнять наследование от класса SPWebEventReceiver.

Важное примечаниеВажно!

Таблицу , в которой указаны события SharePoint Foundation, приемники событий, подходящие для каждого события, и узлы событий, которые можно привязать к каждому приемнику событий, см. в статье Таблица событий, приемников событий и узлов событий SharePoint.

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

После создания проекта обязательно добавьте инструкцию using Microsoft.SharePoint в дополнение к стандартным инструкциям using проекта. В данном проекте создается пространство имен ERDefinition и объявляется открытый класс, ItemEvents, который наследуется от SPItemEventReceiver.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Microsoft.SharePoint;
namespace ERDefinition
{
    public class ItemEvents : SPItemEventReceiver
    ...

Приемник событий в примере должен обнаруживать, когда элементы добавляются в список или библиотеку документов, поэтому метод ItemAdded(SPItemEventProperties) базового класса переопределяется:

      public override void ItemAdded(SPItemEventProperties properties)

Этот метод принимает экземпляр SPItemEventProperties, который предоставляет сведения о свойствах элементах.

Как видно, обработчик событий в примере выполняет не очень много действий. Он просто добавляет отметку с датой и временем в поле "Title", а затем вызывает метод Update().

        {
            SPListItem item = properties.ListItem;
            item["Title"] = item["Title"] + " - " + DateTime.Now;
            item.Update();
        }

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

Листинг программы

Далее представлен полный пример кода для выполнения описанных выше действий.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Microsoft.SharePoint;
namespace ERDefinition
{
    public class ItemEvents : SPItemEventReceiver
    {
        public override void ItemAdded(SPItemEventProperties properties)
        {
            SPListItem item = properties.ListItem;
            item["Title"] = item["Title"] + " - " + DateTime.Now;
            item.Update();
        }
    }
}

См. также

Задачи

Создание компонента обработчика событий

Концепции

Введение в события SharePoint Foundation

Таблица событий, приемников событий и узлов событий SharePoint

Привязка обработчика событий SharePoint Foundation