using System; using System.Linq; using System.Collections; using System.Collections.Generic; using System.Xml; using System.Xml.Linq; public class MainClass { public static void Main() { XDocument xDocument = new XDocument(new XElement("Books", new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "J"), new XElement("LastName", "R")), new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "E"), new XElement("LastName", "B")))); foreach (XElement element in xDocument.Element("Books").Descendants("FirstName").Ancestors()) { Console.WriteLine("Ancestor element: {0}", element.Name); } } }
Author: coder
Adding a Node to the Beginning of the Specified Node's Child Nodes with AddFirst
using System; using System.Linq; using System.Collections; using System.Collections.Generic; using System.Xml; using System.Xml.Linq; public class MainClass { public static void Main() { XDocument xDocument = new XDocument( new XElement("Books", new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "J"), new XElement("LastName", "R")))); xDocument.Element("Books").AddFirst( new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "E"), new XElement("LastName", "B"))); Console.WriteLine(xDocument); } }
Use AddFirst to add an element to xml document
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.Linq; using System.Reflection; using System.Xml.Linq; class Program { static void Main(string[] args) { XElement xml = XElement.Load("Employee.xml"); xml.AddFirst(new XElement("person", new XElement("id", 5), new XElement("firstname", "Tom"), new XElement("lastname", "Cruise"), new XElement("idrole", 1))); Console.WriteLine(xml); } }
Adding a Node in a Specific Location of the Specified Node's Child Nodes with AddAfterSelf
using System; using System.Linq; using System.Collections; using System.Collections.Generic; using System.Xml; using System.Xml.Linq; public class MainClass { public static void Main() { XDocument xDocument = new XDocument( new XElement("Books", new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "J"), new XElement("LastName", "R")))); xDocument.Element("Books").Add( new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "E"), new XElement("LastName", "B"))); xDocument.Element("Books"). Element("Book").AddAfterSelf( new XElement("Book", new XAttribute("type", "Reviewer"), new XElement("FirstName", "F"), new XElement("LastName", "F"))); Console.WriteLine(xDocument); } }
Adding a Node in the Specified Node's Child Nodes with AddBeforeSelf
using System; using System.Linq; using System.Collections; using System.Collections.Generic; using System.Xml; using System.Xml.Linq; public class MainClass { public static void Main() { XDocument xDocument = new XDocument( new XElement("Books", new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "A"), new XElement("LastName", "B")))); xDocument.Element("Books").Add( new XElement("Book", new XAttribute("type", "Author"), new XElement("FirstName", "E"), new XElement("LastName", "B"))); xDocument.Element("Books"). Elements("Book"). Where(e => ((string)e.Element("FirstName")) == "E"). Single<XElement>().AddBeforeSelf( new XElement("Book", new XAttribute("type", "Reviewer"), new XElement("FirstName", "F"), new XElement("LastName", "F"))); Console.WriteLine(xDocument); } }
Filter string by its length
using System; using System.Collections.Generic; using System.Linq; class LinqDemo { static void Main() { string[] names = { "Tom", "Dick", "Harry" }; IEnumerable<string> filteredNames = names.Where(n => n.Length >= 4); foreach (string name in filteredNames) Console.Write(name + "|"); } }
Assign the loop variable to another variable declared inside the statement block
using System; using System.Collections.Generic; using System.Linq; public class MainClass { public static void Main() { IEnumerable<char> vowels = "aeiou"; IEnumerator<char> rator = vowels.GetEnumerator(); IEnumerable<char> query = "Not what you might expect"; foreach (char vowel in "aeiou") { char temp = vowel; query = query.Where(c => c != temp); } } }