Create an Event Handler Feature with VSeWSS1.3

Posted by Kasi Krishnamoorthy at 10/06/2009 01:13:00 PM

How to: Create an Event Handler Feature with VSeWSS1.3

Prerequisites:

Read the following to understand about Event model and Feature in SharePoint.

· Event Fundamentals

· Working with Features

· Solutions Overview

Software Environment:

· VM with MOSS 2007 SP2

· Visual Studio 2008 Professional

· VSeWss 1.3

Object Model:

SharePoint Object Model exposes several event classes inherited from Microsoft.SharePoint assembly. There are four important classes:

· SPItemEventReceiver Class

· SPListEventReceiver Class

· SPWebEventReceiver Class

· SPFeatureReceiver Class

Building the Feature:

It shows how to add a simple event handler that prevents items from being added to a list. Two procedures are involved in this task:

· Creating an event handler in Microsoft Visual Studio

· Adding the event handler as a Feature in Windows SharePoint Services

1. Create a new project in Visual Studio by clicking File, pointing to New, and then clicking Project.

clip_image002

Select Empty project from the SharePoint template list and give a name to the project

2. Select GAC from the Trust Level ( Event Handlers must be deployed only in GAC)

clip_image004

3. In Solution explorer, Right click on the project, and Add a new Item to the project

clip_image006

Select SharePoint category and select the ‘event receiver’ template.

clip_image008

Select ‘Document Library’ from the list

clip_image010

4. This would have created set of files for ItemEventReceiver and ListEventReceiver, as shown below. Depending on the situation you can delete either one of the EventReceiver.

clip_image012

5. Open the ItemEventReceiver.cs file and add code to the ItemAdding event as shown below. The code will prevent adding new item to the list.

clip_image014

6. Similarly add code to the ListEventReceiver as shown below. The sample code will prevent adding new column to the list.

clip_image016

7. Select Project Properties and enter the URL location of website where you want to deploy the EventReceiver.

clip_image018

8. Next step is to create solution to deploy these two Features. Click on ‘WSP View’ (or press Ctrl+W,I), you can see list of files required for the Solution with two Features.

clip_image020

9. Open the ‘feature.xml’ under ItemEventReceiver and change the title to meaningful one. If required add ‘Description’ also.

clip_image022

10. DO the same for the other Event receiver.

11. Press F5 to compile and deploy the solution. Also this would create a WSP file under bin/debug directory. You can use this WSP file to deploy this in different website.

12. Go to SharePoint website, SiteActions->Site Settings->Site Feature and check that the two Features are deployed and activated properly.

clip_image024

clip_image026

13. Open the Document Library within the website and try to add an Item / a column. This should generate a custom error like this.

clip_image028

0 comments: