Saturday, January 24, 2015

Creating a List View using Client Side Object Model for SharePoint 2013 Office 365

We can create a view using below code in visual studio by using CSOM while you execute the code it will ask for user id and password for your Office 365.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.SharePoint.Client;
using Microsoft.SharePoint;
using System.Security;
namespace GetListCollection
{
    class Program
    {
        static void Main(string[] args)
        {
            ClientContext clientContext = new  ClientContext("https://abc.sharepoint.com");
            Web webUrl=clientContext.Web;
            Console.WriteLine("Enter your user name (ex: abc@microsoft.microsoftonline.com):");
            string userName = Console.ReadLine();
            Console.WriteLine("Enter your password.");
            SecureString password = GetPasswordFromConsoleInput();
            clientContext.Credentials = new SharePointOnlineCredentials(userName, password);
            List list = webUrl.Lists.GetByTitle("doctest");
            ViewCollection viewcoll = list.Views;

            string[] viewFields = { "Title" };

            ViewCreationInformation creationInfo = new ViewCreationInformation();
            creationInfo.Title = "Public View";
            creationInfo.ViewFields = viewFields;
            creationInfo.RowLimit = 5;
            viewcoll.Add(creationInfo);
            clientContext.ExecuteQuery();
        }
        private static SecureString GetPasswordFromConsoleInput()
        {
            ConsoleKeyInfo info;

            //Get the user's password as a SecureString
            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;
        }
    }
}

No comments:

Post a Comment