Many a times, we wish to modify some or all of the properties of a listitem. In such cases, it would be a good idea to evaluate what kind of an update we are looking for.

The SPListItem.Update() method updates the database with changes made to the listitem and also internally changes the modifiedBy and modified read only properties with the current user and current DateTime details. This also creates a new version of the item and activates any workflow present on itemUpdated() event.

To avoid version changes, Modified and Modified By fields from getting updated , Item.SystemUpdate() would be the right method to use.

Few points to keep in mind are:

1. You can’t use SystemUpdate() when trying to manipulate the modified and modifiedBy fields. It is a catch22 situation.

2. modified and modifiedBy properties are read only. To update these, you first need to set their read-only to…

View original post 120 more words