Client Side Object Model (.NET) – Sample code for List Items

Below is the code for SharePoint list item using CSOM (.NET). You can modify it as per your requirement.

class Program
{
        static void Main(string[] args)
        {
            string username = "Your username";
            string siteURL="Your SiteURL";
            Console.WriteLine("Enter your password: ");
            SecureString password = GetPassword();
            string listname = "SampleList";
            CSOMListItems.GetListItems(siteURL, username, password, listname);
        }
        public static SecureString GetPassword()
        {
            ConsoleKeyInfo info;
            SecureString securePassword = new SecureString();
            do{
                info = Console.ReadKey(true);
                if(info.Key!=ConsoleKey.Enter)
                {
                    securePassword.AppendChar(info.KeyChar);
                }
            }
            while(info.Key!=ConsoleKey.Enter);
            return securePassword;
        }
}
class CSOMListItems
{
        // Create a new List Item
        public static void CreateListItem(string siteURL, string username, SecureString password, string listname)
        {
            using (ClientContext context = new ClientContext(siteURL))
            {
                context.Credentials = new SharePointOnlineCredentials(username, password);
                Web web = context.Web;
                List list = web.Lists.GetByTitle(listname);
                ListItemCreationInformation info = new ListItemCreationInformation();
                ListItem item = list.AddItem(info);
                item["FirstName"] = "Jim";
                item["Title"] = "Grant";
                item["Email"] = "Jim@hotmail.com";
                item["Company"] = "XYZ";
                item.Update();
                context.ExecuteQuery();
                Console.WriteLine("Item Added Successfully!");
                Console.ReadLine();
            }
        }

        // Get all List Items
        public static void GetListItems(string siteURL, string username, SecureString password, string listname)
        {
            using (ClientContext context = new ClientContext(siteURL))
            {
                context.Credentials = new SharePointOnlineCredentials(username, password);
                Web web = context.Web;
                List list = web.Lists.GetByTitle(listname);
                context.Load(list);
                CamlQuery query = CamlQuery.CreateAllItemsQuery(100);
            
                ListItemCollection itemColl = list.GetItems(query);
                context.Load(itemColl, i => i.Include(item => item, item => item["FirstName"], item=>item["Title"]));
                context.ExecuteQuery();
                foreach (ListItem item in itemColl)
                {
                    Console.WriteLine(item["FirstName"] + " " + item["Title"]);
                }
                Console.ReadLine();
            }
        }

        // Update List Item
        public static void UpdateListItem(string siteURL, string username, SecureString password, string listname)
        {
            using (ClientContext context = new ClientContext(siteURL))
            {
                string firstname = "John";
                string lastname = "Corbett";
                context.Credentials = new SharePointOnlineCredentials(username, password);
                Web web = context.Web;
                List list = web.Lists.GetByTitle(listname);
                context.Load(list);
                CamlQuery query = CamlQuery.CreateAllItemsQuery(100);
                ListItemCollection itemColl = list.GetItems(query);
                context.Load(itemColl, i => i.Include(item => item, item => item["FirstName"], item => item["Title"], 
                             item=>item["WorkPhone"]));
                context.ExecuteQuery();
                foreach (ListItem item in itemColl)
                {
                    if(item["FirstName"].Equals(firstname) && item["Title"].Equals(lastname))
                    {
                        item["WorkPhone"] = "575577";
                        item.Update();
                    }
                }
                Console.WriteLine("List Item Updated Successfully!");
                Console.ReadLine();
                context.ExecuteQuery();
            }
        }

        // Delete a List Item
        public static void DeleteListItem(string siteURL, string username, SecureString password, string listname)
        {
            using (ClientContext context = new ClientContext(siteURL))
            {
                context.Credentials = new SharePointOnlineCredentials(username, password);
                Web web = context.Web;
                List list = web.Lists.GetByTitle(listname);
                ListItem item = list.GetItemById(2);
                item.DeleteObject();
                context.ExecuteQuery();
                Console.WriteLine("List Item Deleted Successfully!");
                Console.ReadLine();
            }
        }

        // Get total number of list items in a list
        public static void GetListItemCount(string siteURL, string username, SecureString password, string listname)
        {
            using(ClientContext context=new ClientContext(siteURL))
            {
                context.Credentials = new SharePointOnlineCredentials(username, password);
                Web web = context.Web;
                List list = web.Lists.GetByTitle(listname);
                context.Load(list, l => l.ItemCount);
                context.ExecuteQuery();
                int itemCount=list.ItemCount;
                Console.WriteLine("Total number of items in " + listname + " are: " + itemCount);
                Console.ReadLine();                  
            }
        }
}

Other Related Articles

CRUD Operations on List using CSOM
CRUD Operations on Web using CSOM
ExecuteQuery vs ExecuteQueryAsync
CRUD Operation on List Items using SharePoint-Hosted Add-In

Power Platform Academy

Start or Upgrade your Career with Power Platform

Learn with Akanksha

Python | Azure | AI/ML | OpenAI | MLOps

Design a site like this with WordPress.com
Get started