Ereignisregistrierungen
Gilt für: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online-| SharePoint Server 2013
Registrieren Sie Ereignishandler auf Website- oder Websitesammlungsebene, die Sie zum Implementieren der Filterung verwenden, um auf Ereignisse zu reagieren.
Das Receivers-Element gibt einen Ereignishandler für Listenelementereignisse an.
Beispiel
Um einen Ereignishandler für Listenereignisse zu registrieren, erstellen Sie einen Ordner in \\Template\\Features
, der eineFeature.xml Datei enthält, die den Bereich und die ID des Features angibt, sowie eine Elementmanifestdatei, auf die die frühere Datei verweist.
Mithilfe der Datei Feature.XML wird ein Ereignishandler registriert, der wie folgt aussehen kann.
<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>
Die Elementmanifestdatei registriert die Ereignishandlerassembly und ordnet sie einem Listentyp zu, der im folgenden Beispiel als Ankündigungsliste (104) angegeben wird.
<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>
Die CS-Datei für den Ereignishandler kann das SharePoint Foundation-Objektmodell verwenden, um auf Ereignisse zu reagieren. Informationen zur Verwendung des Objektmodells zum Erstellen benutzerdefinierter Ereignishandler finden Sie unter Ereignisse in SharePoint Foundation 2010.
Das folgende Beispiel gibt den Inhalt einer Fehlermeldung an, die angezeigt wird, wenn Benutzer versuchen, Elemente in einer Liste zu ändern.
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