knowledgecenter-breadcrum

Knowledge Center

31 May, 2023

Create SharePoint list items with attachments in bulk using the Console app in C#.

Posted on 31 May, 2023 by Admin, Posted in SharePoint C#

Create SharePoint list items with attachments in bulk using the Console app in C#. Blogs

Introduction :
In this blog we will understand Bulk Creation of SharePoint List Items with Attachments using C# Console App

Steps:

Step 1: Create console app in VS Studio as shown below.

Step 2: Declare variables that takes input from the user and store inputs received in declared variables.

Step3: Use SecureString class to create a secure password.

Step4: Right click on the project and open Manage NuGet Packages installer.

Search for Microsoft.SharePointOnline.CSOM as shown below.

Use below code to connect to the SharePoint.

Step5: After connecting SharePoint inside client context get list by name.
Create the list item creation information to store the created items as shown below

Step6: Creating the document to attach in the attachment of the list item.

Step7: Now, using a foreach loop, we are creating the desired number of list items and updating them in the SharePoint list. Additionally, we are also updating the attachments in the list items.

Step8: Once all the list items are added in the list creation information, we execute the below command to create all the list items in SharePoint in bulk.

Step9: Here is the output of the code

Code:

using Microsoft.SharePoint.Client;
using System;
using System.IO;
using System.Security;
using System.Text;
namespace NISL.BLOG.CONSOLEAPP
{
class Program
{
private static string spAdminEmail = string.Empty;
private static string spPassword = string.Empty;
private static string SharePOintURL = string.Empty;
static void Main(string[] args)
{
Console.WriteLine();
Console.WriteLine("Please Enter Dynamics SharePoint details:");
Console.WriteLine();
Console.WriteLine("1. Enter SharePoint URL: (eg. https://nisltest2.sharepoint.com/sites/ddatest1)");
SharePOintURL = Console.ReadLine();
        Console.WriteLine("2. Enter SharePoint Admin Email: (eg. admin@yourdomain.com)");
        spAdminEmail = Console.ReadLine();

        Console.WriteLine("3. Enter SharePoint Admin Password:");
        spPassword = Console.ReadLine();

        string password = spPassword;
        SecureString securePassword = new SecureString();
        foreach (char c in password)
        {
            securePassword.AppendChar(c);
        }
        using (ClientContext clientContext = new ClientContext(SharePOintURL))
        {

            // Set the credentials
            clientContext.Credentials = new SharePointOnlineCredentials(spAdminEmail, securePassword);

            // Specify the target list
            List targetList = clientContext.Web.Lists.GetByTitle("Demo_1");

            // To store the Create ListItems
            ListItemCreationInformation itemCreateInfo = new ListItemCreationInformation();

            string strMessage = "this is a demo";
            byte[] filename = Encoding.ASCII.GetBytes(strMessage);

            for (int i = 1; i < 100>             {
                //Create new List Item to Add the Item In SharePoint List
                ListItem newItem = targetList.AddItem(itemCreateInfo);
                newItem["Title"] = "Demo_" + i;
                newItem.Update();
                // Add the Attchmnets
                for (int j = 1; j <= 2; j++)
                {
                    AttachmentCreationInformation attachmentInfo = new AttachmentCreationInformation();
                    attachmentInfo.FileName = "Demo_"+j+".txt";
                    attachmentInfo.ContentStream = new MemoryStream(filename);
                    // Add the attachment to the list item
                    newItem.AttachmentFiles.Add(attachmentInfo);
                    newItem.Update();
                }
            }
            // Craete All list in builk in share Point
            clientContext.ExecuteQuery();
        }

        Console.WriteLine("Process End.");
        Console.ReadLine();
    }
}
}

Comment

This is a Required Field

Loading

Recent Updates

Blogs
02 Apr, 2024

Sales accelerator in D365 Sales

Introduction: In this blog we will see how Sales accelerator works and also how 'My work list' displays the work items.…

READ MORE
Blogs
01 Apr, 2024

How to Create Entitlement in D365 Customer Service

In this blog we will learn about what is Entitlement and how to create it. 1)what is Entitlement? Entitlement is…

READ MORE
Blogs
22 Mar, 2024

How to Create Product Catalog in Dynamics 365 for Sales - Part 1

In this blog series we will learn how to set up a product catalog in D365 Sales. The Product Catalog contains…

READ MORE