4

How to update Created, Created By, Modified and Modified By in list items using CSOM?

1
  • 1
    You can achieve similar functionality Using REST API. I have tested in for Sharepoint Online. You can find code snippet at Update Editor and Author Filed
    – anomepani
    Commented Feb 2, 2020 at 13:03

1 Answer 1

7

Please find the code to update Created, Created By, Modified, Modified By using CSOM.

            ClientContext ctx = new ClientContext("http://siteURL/");
            List list = ctx.Web.Lists.GetByTitle("Info Path");
            ListItemCollection items = list.GetItems(CamlQuery.CreateAllItemsQuery());
            ctx.Load(items); // loading all the fields
            ctx.ExecuteQuery();
            User theUser = ctx.Web.EnsureUser("domain\\user");
            ctx.Load(theUser);
            ctx.ExecuteQuery();
            foreach (var item in items)
            {
                item["Created"] = "2015-07-03";
                item["Modified"] = "2017-07-03";
                item["Editor"] = theUser;
                item["Author"] = theUser;
                item.Update(); //Apply the change
            }
            ctx.ExecuteQuery();
3
  • 3
    i too agree with the code given above, but it adds an version to the item if we update the system columns
    – Pradeep
    Commented Apr 24, 2018 at 11:44
  • I couldn't make it work. As soon as ExecuteQuery is executed, the "Created" / "Modified" values revert to their previous values. On another hand, the versioning can be suppressed using List.EnableVersioning (followed by List.Update and ClientContext.ExecuteQuery). Commented Mar 8, 2019 at 13:32
  • You can avoid the extra versions by using item.SystemUpdate() instead of item.Update() - this may not have been available in CSOM when the question was raised (can't remember when it was added).
    – randomsock
    Commented Mar 27, 2019 at 16:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.