Wednesday, 30 January 2013

Filtering Items from List in SharePoint 2010 using Client Object Model (C#)



Step 1: Create New Project. (Minimum .NET Framework 3.5)
Step 2: Add “Microsoft.SharePoint.Client” and “Microsoft.SharePoint.Client.Runtime” namespaces.
Step 3: Write the following code.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//SharePoint namespace
using Microsoft.SharePoint.Client;

namespace FilteringListItems
{
    class Program
    {
        static void Main(string[] args)
        {
            string siteUrl = "http://sharepointserver.com";
            ClientContext clientContext = new ClientContext(siteUrl);
            clientContext.Credentials = new System.Net.NetworkCredential("admin", "password", "sharepointserver.com");
            Web site = clientContext.Web;

            //Getting List
            List list = site.Lists.GetByTitle("Students");
            clientContext.Load(list);
            clientContext.ExecuteQuery();

            //Filtering List Items
            CamlQuery camlQuery = new CamlQuery();
            camlQuery.ViewXml =
                @"<View>
                    <Query>
                      <Where>
                        <Eq>
                          <FieldRef Name='Age' />
                          <Value Type='Number'>35</Value>
                        </Eq>
                      </Where>
                    </Query>
                  </View>";
            ListItemCollection listItemCollection = list.GetItems(camlQuery);
            clientContext.Load(listItemCollection);
            clientContext.ExecuteQuery();

            //Printing List Items
            foreach (ListItem listItem in listItemCollection)
            {
                Console.WriteLine("Title: {0}, First Name: {1}, Last Name: {2}, Age: {3}", listItem["Title"], listItem["First Name"], listItem["Last Name"], listItem["Age"]);
            }
            Console.ReadLine();
        }
    }
}


1 comment: