I’m usually disappointed when writers employ oft-overused metaphors to describe a situation.
With that in mind, Share Point 2010 is like a sea of icebergs – there is a lot going on under the surface that you may not notice until it’s too late.
It appears as though they are firing twice in this situation because Share Point is updating the properties on the document and then checking it in on the same request.
But that option exists to be used, and some people really do need it.
If you find yourself in this situation, then you’ll have to solve the problem in code.
See Working with Before Properties and After Properties on SPItem Event Receiver for tables outlining the contents of Event Receivers properties for different events and list types.
I thought this would be pretty simple, but guess not. Do I need to somehow specify the name of the document library in addition to the name of the custom column that I am specifying? This is a Share Point 2007 environment, publishing site.
Dangers lurk hidden out there which, if you run into them, can be a blow to your project and waste a great deal of time.
Damon gives just one example of a poisoned dagger in the game of Sharepoint Development: The Item Event Receiver.Also note: the Item Updating and Item Updated events that fire in response to the properties being edited from the dialog will always occur, even if the user is not entering or changing any of the values.Turning off the Require Check Out option is a great quick fix if you don’t require the item to be checked out in order for it to be edited.Note: when the property editor dialog displays, the user has the option to cancel out of the dialog.If the user opts to cancel, then only the Item Adding and Item Added events will have fired and the document will be left in a checked out state.List Id; // ID for the list item from the properties object int list Item Id = properties. Run With Elevated Privileges(delegate() ); If the list is a Document Library, you can use Before Properties.