If you want to update, Delete any and all the list, document library, publishing library to entire site collection. Following code will be helpful to achieve this requirements.
public static class Program { static void Main(string[] args) { try { using (ClientContext _context = GetSiteContext(Constants.DeploymentSiteUrl)) { var webs = clientContext.Site.EnumAllWebs(w => w.Title, w => w.Lists); foreach (var web in webs) { foreach (var list in web.Lists) { if (list.Title == "Pages") { Console.WriteLine(web.Title + "-----" + list.Title); result.Add(web.Title + list.Title); CamlQuery query = CamlQuery.CreateAllItemsQuery(); query.ViewXml = @""; ListItemCollection _pagelibraryitems = list.GetItems(query); clientContext.Load(_pagelibraryitems); clientContext.ExecuteQuery(); CamlQuery query = CamlQuery.CreateAllItemsQuery(); query.ViewXml = @" "; ListItemCollection _pagelibraryitems = list.GetItems(query); foreach (ListItem listItem in _pagelibraryitems) { clientContext.Load(listItem); clientContext.ExecuteQuery(); listItem["Title"] = "Value" listItem.Update(); } } } } } }catch (Exception ex){ Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Main" + ex.Message); Console.ReadLine(); } } public static List GetAllWebs(this Site demosite, params Expression >[] retrievalsSites) { var ctx = demosite.Context; var rootWeb = demosite.RootWeb; ctx.Load(rootWeb, retrievalsSites); var result = new List (); result.Add(rootWeb); AllSubSitesInnter(rootWeb, result, retrievals); return result; } private static void AllSubSitesInnter(Web parentWeb, ICollection result, params Expression >[] retrievalsSites) { var ctx = parentWeb.Context; var webs = parentWeb.Webs; ctx.Load(webs, wcol => wcol.Include(retrievalsSites)); ctx.ExecuteQuery(); foreach (var web in webs) { result.Add(web); AllSubSitesInnter(web, result, retrievalsSites); } } private static ClientContext GetSiteContext(string siteUrl) { // Request Office365 site from the user Console.WriteLine("Authenticating for {0}", siteUrl); string userName = GetUserName(); SecureString pwd = GetPassword(); ClientContext context = new ClientContext(siteUrl); context.AuthenticationMode = ClientAuthenticationMode.Default; //For SharePoint Online context.Credentials = new SharePointOnlineCredentials(userName, pwd); return context; } /// /// Helper to return the password /// ///SecureString representing the password public static SecureString GetObjPassword() { SecureString SSPassword = new SecureString(); try { string strpassword = Constants.strObjPassword; foreach (char c in strpassword) { SSPassword.AppendChar(c); } /// This code is for typing and getting password //for (ConsoleKeyInfo keyInfoValue = Console.ReadKey(true); keyInfoValue.Key != ConsoleKey.Enter; keyInfoValue= Console.ReadKey(true)) //{ // if (keyInfoValue .Key == ConsoleKey.Backspace) // { // if (sStrPwd.Length > 0) // { // sStrPwd.RemoveAt(sStrPwd.Length - 1); // Console.SetCursorPosition(Console.CursorLeft - 1, Console.CursorTop); // Console.Write(" "); // Console.SetCursorPosition(Console.CursorLeft - 1, Console.CursorTop); // } // } // else if (keyInfoValue.Key != ConsoleKey.Enter) // { // Console.Write("*"); // sStrPwd.AppendChar(keyInfoValue.KeyChar); // } //} } catch (Exception e) { SSPassword = null; Console.WriteLine(e.Message); } return SSPassword; } ////// Helper to return the User name. /// ///public static string GetObjUserName() { string ObjUserName = string.Empty; try { ObjUserName = Constants.strUserName; } catch (Exception e) { Console.WriteLine(e.Message); ObjUserName = string.Empty; } return ObjUserName; }
Comments
Post a Comment