My new blog present here.

Featured Post

Insights into Sitecore Search: A Definitive Introduction

A key component of digital experience management is effective information retrieval. A simplified approach is required for websites, applications, and platforms containing a lot of material so that consumers can easily get the data they require. This need is met by Sitecore, a well-known name in the field of digital experience platforms (DXPs), which provides powerful and comprehensive search functionality. We will travel into the realm of Sitecore Search in this article, learning about its capabilities, architecture , and the enormous value it offers both developers and end users. Introduction to Sitecore Search    A headless content discovery platform powered by AI , Sitecore Search enables you to build predictive and custom search experiences across various content sources. To extract and ...

Event receiver to update an item's in list

How to update Created By and Modified By fields in sharepoint list using C#
In this article I will explain, how to update list item in event receiver. In event receiver, I will update Created By /Modified By/Title metadata of list item.
Code:

public override void ItemUpdated(SPItemEventProperties properties)
    {
        int userID=0;
        string userNTID = "WIN\AMITKUMAR";
        SPSecurity.RunWithElevatedPrivileges(delegate()
        {
        SPListItem CurrentItem = properties.ListItem;
        CurrentItem.Web.AllowUnsafeUpdates = true;
        CurrentItem.Web.Site.AllowUnsafeUpdates = true;
        // In the next statment i am updating CreatedBy(Author) filed with SystemAccount
        CurrentItem["Author"] = CurrentItem.Web.Site.SystemAccount.ID; //CreatedBy
        //We can also update CreatedBy(Author)/ModifiedBy(Editor) field with Any user account
         FindUserIDByNTID(userNTID, CurrentItem.Web.Site, ref userID);
         if (userID > 0)
         {
            CurrentItem["Editor"] = userID; //ModifiedBy
         }
         else
         {
            CurrentItem["Editor"] = CurrentItem.Web.Site.SystemAccount.ID; //ModifiedBy
         }
        CurrentItem["Title"] = "Amit Kumar";
        CurrentItem.Update();
        CurrentItem.ParentList.Update();
        CurrentItem.Web.Update();
        CurrentItem.Web.AllowUnsafeUpdates = false;
        CurrentItem.Web.Site.AllowUnsafeUpdates = false;
        });
    }
public static void FindUserIDByNTID(string userNTID, SPSite site, ref int userID)
        {
          try
            {
              //--Check user NTID is null or not
              if (!string.IsNullOrEmpty(userNTID))
              {
               //--userNTID is not null
               //--then fetch ID of the user
               userID = site.RootWeb.AllUsers[userNTID].ID;
              }
              else
              {
               //--If userNTID is null
               userID = 0;
              }
          }
        catch (ArgumentException ex)
            {
              userID = 0;
            }
      catch (Exception ex)
      {
      userID = 0;
      }
     }

Comments

Popular posts from this blog

Sitecore GraphQL Queries

Sitecore Experience Manager Cloud (XM Cloud) Building blocks

Configuring Sitecore Next.js Headless SXA Multisite App in a Sitecore Container