If you wish to modify a property value on the list item during the event, the value should be updated in After Properties property of the properties parameter.Share Point reads these values from the event parameter and modifies the item accordingly when the actual operation runs (e.g.

This is my first post in 2013, here I just want to discuss about Event Receivers in Share Point 2010 (SPItem Event Receiver class) and an important factor with the Event Receivers.

Let me start with “What is an Item Event Receiver”Item Event receivers in Microsoft Share Point 2010 enable your custom code to respond when specific actions occur on a Share Point List Item.

Instead of writing more paragraphs I can use tabular to explain, I think this will be easy to understand.

Each event method has a SPItem Event Properties parameter named properties.

For example, if you define an instance level variable in the class to store data in the As per the first look of Developers, we say simply, Item Updating and Item Updated events are fire twice when we adding a document to a document library that has the Require Check Out option enabled.

This is not either issue with Share Point or issue with Custom Code.

So the net result of this is that the document is uploaded and the Item Adding and Item Added events have fired, which is pretty much what you would expect.

Although asynchronous events expose a SPItem Event Properties parameter named properties just like their synchronous counterparts, remember that the operation has already completed so you cannot modify anything in the properties parameter (well, you can, but it doesn’t do anything).

Additionally, the properties parameter may not be populated with information that you would tend to expect to be present.

One major thing you should know about the SPItem Event Receiver class is that while you can implement multiple list item event handlers in a single class, Share Point instantiates a new instance of that class for each individual event it needs to handle.

What this means is that you cannot store data in instance-level variables and share that data between event handlers.