Before writing event receiver, you should have the
Sharepoint list for which you are going to write the event receiver.If you have
long term goal of creating multiple event receiver for lists, maintain a folder
for these event receiver.
1.
Create a folder EventReceiver
2.
Right click on the folder EventReceiverà Select Add optionà Select New Item option
After
entering the name , click on Add
button.
5. On the opened window, Select the List Item Events option from the
dropdown of ‘What type of event receiver
do you want?’ and select the list definition name to which you are going to
write event receiver. For example here I have chosen ActionDefinition. Action is the Sharepoint list suffixed with the
word Definition from the dropdown of ‘What item should be the event source’
6. Now choose the options in the Handle the following Events. Suppose
you want to do some basic operation like,
What you want to do if an item deletion, item addition, item updating?
Here you need to choose each event logically.
·
Suppose ,in simple english we say if the item is
added then I want to perform some action
Simple thing is, logically we need to think that, it is ‘ITEM WAS Added’(after
the item is added)..So you need to choose Item
was added event type. Because you can perform some action after the item is
added, so that you will get object after addition of item
·
Suppose, in simple english we say if the item is
updated, I want to perform some action
Simple thing is , logically we need to think that, it is ‘ITEM WAS
UPDATED’( after updating the item).
So you need to choose Item was
updated event type. Because you can perform some action after the item is
getting updated. , so that you will get object after updating the item.
·
Suppose, in simple english we say if the item is deleted , then I want to
purpose some action. Here you should technically and logically understand some
thing about the current event. If you choose the event type as Item was deleted
, then you will lost the object reference itself , so that you can not perform
any actions. So you need to choose Item is being deleted event type, so that
you will get the object reference of item which is being deleted
There
are many event types which you can choose as per the requirements.Now click on the Finish button
7. An
Event receiver C# file will be opened for you to write the further logic. It
will have 3 overridden methods which are
for An Item is being deleted,An Item was
Added, An Item was Updated
Since
you are going to write event receiver on items, you need to get the SPListItem
object
public override void ItemDeleting(SPItemEventProperties properties)
{
SPListItem item=properties.ListItem;
UpdateSomethingDeleted(item,properties.web);
}
public override void ItemAdded(SPItemEventProperties properties)
{
SPListItem item=properties.ListItem;
UpdateSomethingAdded(item,properties.web);
}
public override void ItemUpdated(SPItemEventProperties properties)
{
SPListItem item=properties.ListItem;
UpdateSomethingUpdate(item,properties.web);
}
In all the three methods
we are trying to do some thing by getting the SPListeItem object
Hope this may help someone
Pradeepa Achar
Comments