When to use SystemUpdate when editing a SharePoint list item programmatically


When coding against the SharePoint object model, I will generally do the following:

  string newFolderName = "My new folder name";
  folder.Item[SPBuiltInFieldId.Title] = newFolderName;
  folder.Item.Update(); // or SystemUpdate(false)


There are two things to note here. I use the “SPBuiltInFieldId.Title” instead of folder["Title"]. If I use the ‘SPBuiltInFieldId.Title’ property, I won’t have a problem with languages other than English. Referencing the ‘Title’ field as “Title” with through an error if the field is in another language.

Also, if you want to use folder.Item.Update(), you will also change the ‘modified’ and ‘modified by’ information. Using folder.Item.SystemUpdate(false) will retain this information.

Hope this helps.

Leave a Reply