SharePoint 2010: Cómo cambiar el tipo de evento a controlar con un manejador de eventos!

Con SharePoint 2010, se simplifica notablemente la creación de manejadores de eventos para facilitar la creación de cierta lógica de negocio utilizando Visual Studio 2010 a la vez que se mejoran y se añaden nuevos eventos en la plataforma. Por defecto, cuando creamos un proyecto de tipo “Event Receiver” en Visual Studio 2010 o bien añadimos un elemento de este tipo a un proyecto de Visual Studio se inicia el correspondiente asistente que nos permite elegir entre los distintos tipos de eventos disponibles para un elemento de lista, una lista, una colección de sitios o un sitio, un flujo de trabajo o bien una lista configurada para recibir correo electrónico. Además, cada manejador puede crearse para “manejar” varios eventos:

image image

 

Una vez concluido el asistente, se crean los elementos que forman parte por defecto del manejador (en el correspondiente SPI o SharePoint Project Item):

  • Un archivo elements.xml en el que se describe la configuración del manejador.
  • Un archivo “.cs” en el que añadir la lógica de los métodos que controlan los eventos añadidos.

image

Una duda que puede surgir…¿cómo cambio el tipo de evento a controlar? La respuesta es sencilla, modificando el archivo elements.xml. En concreto, basta con cambiar el valor la sección <Type> de dicho archivo. Por ejemplo, para pasar de controlar el evento de elemento borrado a elemento borrándose basta con sustituir el valor ItemDeleted por ItemDeleting: 

   1: <?xml version="1.0" encoding="utf-8"?>

   2: <Elements xmlns="http://schemas.microsoft.com/sharepoint/">

   3:   <Receivers ListTemplateId="104">

   4:       <Receiver>

   5:         <Name>erUpdateSCListItemAdded</Name>

   6:         <Type>ItemAdded</Type>

   7:         <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>

   8:         <Class>SPUpdateSC.erUpdateSCList.erUpdateSCList</Class>

   9:         <SequenceNumber>10000</SequenceNumber>

  10:       </Receiver>

  11:       <Receiver>

  12:         <Name>erUpdateSCListItemUpdated</Name>

  13:         <Type>ItemUpdated</Type>

  14:         <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>

  15:         <Class>SPUpdateSC.erUpdateSCList.erUpdateSCList</Class>

  16:         <SequenceNumber>10000</SequenceNumber>

  17:       </Receiver>

  18:       <Receiver>

  19:         <Name>erUpdateSCListItemDeleted</Name>

  20:         <Type>ItemDeleting</Type>

  21:         <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>

  22:         <Class>SPUpdateSC.erUpdateSCList.erUpdateSCList</Class>

  23:         <SequenceNumber>10000</SequenceNumber>

  24:       </Receiver>

  25:  

  26:   </Receivers>

  27: </Elements>

Y hasta aquí llega este tip rápido sobre como cambiar el tipo de evento a controlar una vez definido un manejador en Visual Studio 2010.

Publicado por

Juan Carlos González

Juan Carlos es Ingeniero de Telecomunicaciones por la Universidad de Valladolid y Diplomado en Ciencias Empresariales por la Universidad Oberta de Catalunya (UOC). Cuenta con más de 12 años de experiencia en tecnologías y plataformas de Microsoft diversas (SQL Server, Visual Studio, .NET Framework, etc.), aunque su trabajo diario gira en torno a SharePoint & Office 365. Juan Carlos es MVP de Office Servers & Services desde 2015 (anteriormente fue reconocido por Microsoft como MVP de Office 365 y MVP de SharePoint Server desde 2008 hasta 2015), coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador y coordinador del Grupo de Usuarios de SharePoint de España (SUGES, www.suges.es), así como co-director de la revista gratuita en castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la fecha, ha publicado 8 libros sobre SharePoint & Office 365 y varios artículos en castellano y en inglés sobre ambas plataformas.

Un comentario en “SharePoint 2010: Cómo cambiar el tipo de evento a controlar con un manejador de eventos!”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *