Article
    C#
    ADO.Net
    .NET
    ASP.Net & Web Forms
    Custom Controls
    Web Development
    Exception Handling
    XML
    Database
    Security in .Net
    Testing
    Web Services
    Windows Services
    Windows Controls
    WCF
    AJAX
    WPF
    XAML
    Reporting
    Setup
    VB.Net
    LINQ
    JQuery
    SilverLight
    JavaScript
    HTML5
    Crystal Report
    Cloud Computing
    Share Point
    Visual C++
    MVC
    Android
    PHP
    Java
    HTML
    WordPress
    Joomla
    Products
    Drupal
    Windows Phone
    JSON
    LightSwitch
    iPhone/iPad
    Ruby on Rails
    IIS 7
    Windows 8
    CSS/CSS3
    Excel
    MS Access
    Shortcut Keys
    Visual SourceSafe
    Team Foundation Server
    API(s)
    Sencha-Touch
Follow Us
Follow _MindStick_ on Twitter View MindStick Software's LinkedIn profile View MindStick Software's Facebook profile
Top Contributor
Advertisement
Advertise with Us
Mindstick
Article Article  Forum Forum  Blog Blog  Quiz Quiz  Beginner Beginner  Careers Careers  Contact Contact  Login Login  
Home | Product | Services | About Us | Interview | DeveloperSection | Submit an Article | Submit Blog

Home >> Share Point >> Insert, Update, Delete in SharePoint 2010 using LINQ
Insert, Update, Delete in SharePoint 2010 using LINQ
Insert, Update, Delete in SharePoint 2010 using LINQ


by Rohit Kesharwani on 12/12/2011 8:41:30 PM

Views: 4912       Comments: 0

Insert, Update, Delete in SharePoint 2010 using LINQ

In SharePoint 2010 we can use LINQ syntax to query the list instead of using CAML query. In order to work with LINQ we need a command line tool called SPMetal.exe.

This tool is used to generate the entity classes that is required to perform object oriented queries towards SharePoint server. It is also required to get the intellisense when we are working in Visual Studio 2010.This tool resides in
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN folder.

Creating the entity classes:

  • Open Command Prompt as an administrator.
  • Change the path to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN.

Insert, Update, Delete in SharePoint 2010 using LINQ

  • Run the following command to generate the entity classes.

    SPMetal.exe /web:http://sharepointsiteaddress /code:d:\YourEntityFile.cs

Insert, Update, Delete in SharePoint 2010 using LINQ

  • Open Visual Studio 2010.
  • Go to File à New à Project.
  • Select Console Application from the installed templates.

Insert, Update, Delete in SharePoint 2010 using LINQ

  • Right click on the solution, select "Add an existing item".
  • Add the MyEntities.cs class to the solution.

Insert, Update, Delete in SharePoint 2010 using LINQ

·         Add References by right click on the Reference option:

·         Choose Browse:

·         Go to the following location: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI.

·         Add Microsoft.SharePoint.dll and Microsoft.SharePoint.Linq.dll in Reference.

Insert, Update, Delete in SharePoint 2010 using LINQ

I have a following Products list in the SharePoint Server.

Insert, Update, Delete in SharePoint 2010 using LINQ

Add the following code in Program.cs file to perform DML operation in SharePoint list:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using Microsoft.SharePoint.Client;

using Microsoft.SharePoint.Linq;

 

namespace DMLLinqinSP

{

    class Program

    {

        private void Insert()

        {

            MyEntitiesDataContext myEntitiesDataContext = new
                                   MyEntitiesDataContext("http://rohit:34143/");

 

            // Get the list from the site

            EntityList<ProductsItem> listItems =
                              myEntitiesDataContext.GetList<ProductsItem>("Products");

 

            //Create a new item

            ProductsItem newItem = new ProductsItem()

            {

                Title = "Hardware",

                ProductID = "5",

                ProductName = "RAM"

            };

 

            // Insert the new list item to the list

            listItems.InsertOnSubmit(newItem);

 

            //Submit the changes

            myEntitiesDataContext.SubmitChanges();

            Console.WriteLine("Item Inserted");

        }

        private void Update()

        {

            MyEntitiesDataContext myEntitiesDataContext = new
                                     MyEntitiesDataContext("http://rohit:34143/");

            // Querying the list item that has to be updated

            var updateItem = (from item in myEntitiesDataContext.Products where
                                          item.ProductID == "1" select item).First();

            updateItem.ProductID = "6";

            updateItem.ProductName = "MotherBoard";

 

            // Submit the changes

            myEntitiesDataContext.SubmitChanges();

 

            Console.WriteLine("Item Updated");

        }

        private void Delete()

        {

            // Create an instance

            MyEntitiesDataContext myEntitiesDataContext = new
                                      MyEntitiesDataContext("http://rohit:34143/");

            // Get the list from the site

            EntityList<ProductsItem> listItems =
                               myEntitiesDataContext.GetList<ProductsItem>("Products");

 

            // Querying the list item that has to be deleted

            var updateItem = (from item in myEntitiesDataContext.Products where
                                             item.ProductID == "6" select item).First();

 

            // Deleting the list item

            listItems.DeleteOnSubmit(updateItem);

 

            // Submit the changes            

            myEntitiesDataContext.SubmitChanges();

 

            Console.WriteLine("Item Deleted");

        }

        static void Main(string[] args)

        {

            Program obj = new Program();

            byte ch = 0;

            do

            {

                Console.WriteLine("\t\t\t----Select option----\t\t\t");

                Console.WriteLine("\t\t\t----Press (1) For Insert ----\t\t\t");

                Console.WriteLine("\t\t\t----Press (2) For Update ----\t\t\t");

                Console.WriteLine("\t\t\t----Press (3) For Delete ----\t\t\t");

                Console.WriteLine("\t\t\t----Press (0) For Exit ----\t\t\t");

                ch = Convert.ToByte(Console.ReadLine());

                switch (ch)

                {

                    case 1:

                        obj.Insert();

                        break;

                    case 2:

                        obj.Update();

                        break;

                    case 3:

                        obj.Delete();

                        break;

                    default:

                        Console.WriteLine("Invalid Option");

                        break;

                }

            } while (ch != 0);

        }

    }

}

 

After creating an application press F5 to debug your application:

Insert, Update, Delete in SharePoint 2010 using LINQ

·         When you Press (1) specified item is added in the SharePoint list. Simultaneously, you can also check in the SharePoint list (Products) that one row is added in the list.

·         When you Press (2) Product ID 1 is updated in SharePoint Products list.

·         When you Press (3) Product ID 6 is deleted from the SharePoint Products list.

Thanks for reading this article. I think this will help you a lot.

Report Abuse Form
Reason:    
 

Title :
Comment :
Text ColorBackground Color
BoldItalicUnderline
LeftCenterRightJustify
Ordered ListBulleted List
IndentOutdent
Horizontal Rule
SubscriptSuperscript
HyperlinkImage
Design ModeDesign
View HtmlHtml
     
 
Latest Article by Rohit KesharwaniRSS Feed
    
    
    
    
    
    
    
    
    
    
More...
Latest BlogsRSS Feed
    
    
    
    
    
    
    
    
    
    
More...
Top Viewed ArticlesRSS Feed
    
    
    
    
    
    
    
    
    
    
Top Viewed BlogsRSS Feed
    
    
    
    
    
    
    
    
    
    
Latest Interview QuestionsRSS Feed
    
    
    
    
    
    
    
    
    
    
More...
Total Online Users: 2719
Advertisement
MindStick SurveyManager
Advertise with Us
  
Copyright © 2013MindStick. All Rights Reserved.