Compartir a través de


Registros de eventos

Se aplica a: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online | SharePoint Server 2013

Registre los controladores de eventos en el nivel de colección de sitios o de sitio que usará para implementar el filtrado para responder a eventos.

El elemento Receivers especifica un controlador de eventos para los eventos de elemento de lista.

Ejemplo

Para registrar un controlador de eventos para eventos de lista, cree una carpeta en \\Template\\Features para que contenga un archivo Feature.xml que especifique el ámbito y el identificador de la característica, y un archivo de manifiesto de elementos al que hace referencia el archivo anterior.

El archivo Feature.xml que registra un controlador de eventos puede ser similar al siguiente.

    <Feature
      Scope="Web"
      Title="Simple Updating Item Event Handler Registration"
      Id="A6B8687A-3200-4b01-AD76-09E8D163FB9A"
      xmlns="http://schemas.microsoft.com/sharepoint/">
      <ElementManifests>
        <ElementManifest Location="elements.xml"/>
      </ElementManifests>
    </Feature>

El archivo de manifiesto de elementos registra el ensamblado del controlador de eventos y lo asocia a un tipo de lista, que en el siguiente ejemplo se especifica como las listas de anuncio (104).

    <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
      <Receivers
        ListTemplateId="104">
        <Receiver>
          <Name>SimpleUpdateEvent</Name>
          <Type>ItemUpdating</Type>
          <SequenceNumber>10000</SequenceNumber>
          <Assembly>SimpleUpdateEventHandler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=10b23036c9b36d6d</Assembly>
          <Class>MS.Samples.SimpleItemUpdateHandler</Class>
          <Data></Data>
        </Receiver>
      </Receivers>
    </Elements>

El archivo .cs del controlador de eventos puede usar el modelo de objetos de SharePoint Foundation para responder a eventos. Para obtener información sobre cómo usar el modelo de objetos para crear controladores de eventos personalizados, vea Eventos en SharePoint Foundation 2010.

En el ejemplo siguiente se define el contenido de un mensaje de error que se mostrará cuando los usuarios intenten modificar elementos de una lista.

    using System;
    using System.Collections.Generic;
    using System.Text;
    using Microsoft.SharePoint;

    namespace MS.Samples
    {
        public class SimpleItemUpdateHandler : SPItemEventReceiver
        {
            public override void ItemUpdating(SPItemEventProperties properties)
            {
                properties.Cancel = true;
                properties.ErrorMessage = "Updating data is not supported.";
            }
        }
    }

    Imports System
    Imports System.Collections.Generic
    Imports System.Text
    Imports Microsoft.SharePoint

    Namespace MS.Samples
        Public Class SimpleItemUpdateHandler
            Inherits SPItemEventReceiver
            Public Overrides Sub ItemUpdating(ByVal properties As SPItemEventProperties)
                properties.Status = SPEventReceiverStatus.CancelWithError
                properties.ErrorMessage = "Updating data is not supported."
            End Sub
        End Class
    End Namespace

Vea también