<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FXML_LINQ%2FXDocument</id>
		<title>Csharp/C Sharp/XML LINQ/XDocument - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FXML_LINQ%2FXDocument"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/XML_LINQ/XDocument&amp;action=history"/>
		<updated>2026-04-29T23:19:14Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/XML_LINQ/XDocument&amp;diff=236&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/XML_LINQ/XDocument&amp;diff=236&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:18Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/XML_LINQ/XDocument&amp;diff=237&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/XML_LINQ/XDocument&amp;diff=237&amp;oldid=prev"/>
				<updated>2010-05-26T11:34:02Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Create XDocument from XmlReader==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Data.Linq;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Xml;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
class Program {&lt;br /&gt;
    static void Main(string[] args) {&lt;br /&gt;
        XmlReader reader = XmlReader.Create(&amp;quot;Employee.xml&amp;quot;);&lt;br /&gt;
        XDocument xml = XDocument.Load(reader);&lt;br /&gt;
        Console.WriteLine(xml);&lt;br /&gt;
        XElement idperson = xml.Descendants(&amp;quot;idP&amp;quot;).Last();&lt;br /&gt;
        idperson.Add(new XElement(&amp;quot;idperson&amp;quot;,&lt;br /&gt;
                        new XAttribute(&amp;quot;id&amp;quot;, 1),&lt;br /&gt;
                        new XAttribute(&amp;quot;year&amp;quot;, 2006),&lt;br /&gt;
                        new XAttribute(&amp;quot;salary&amp;quot;, &amp;quot;16&amp;quot;)));&lt;br /&gt;
        StringWriter sw = new StringWriter();&lt;br /&gt;
        XmlWriter w = XmlWriter.Create(sw);&lt;br /&gt;
        xml.Save(w);&lt;br /&gt;
        w.Close();&lt;br /&gt;
        Console.WriteLine(sw.ToString());&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Creating an XML Document with XDocument==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Xml;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        XDocument xDocument = new XDocument(&lt;br /&gt;
          new XDeclaration(&amp;quot;1.0&amp;quot;, &amp;quot;UTF-8&amp;quot;, &amp;quot;yes&amp;quot;),&lt;br /&gt;
          new XDocumentType(&amp;quot;Books&amp;quot;, null, &amp;quot;Books.dtd&amp;quot;, null),&lt;br /&gt;
          new XProcessingInstruction(&amp;quot;Book&amp;quot;, &amp;quot;out-of-print&amp;quot;),&lt;br /&gt;
          new XElement(&amp;quot;Books&amp;quot;));&lt;br /&gt;
        Console.WriteLine(xDocument);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get Encoding, Version and standalone from XML declaration==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Data.Linq;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
class Program {&lt;br /&gt;
    static void Main(string[] args) {&lt;br /&gt;
        XDocument xml = XDocument.Load(&amp;quot;Hello_XLINQ.xml&amp;quot;);&lt;br /&gt;
        Console.WriteLine(&amp;quot;Encoding: {0}&amp;quot;, xml.Declaration.Encoding);&lt;br /&gt;
        Console.WriteLine(&amp;quot;Version: {0}&amp;quot;, xml.Declaration.Version);&lt;br /&gt;
        Console.WriteLine(&amp;quot;Standalone: {0}&amp;quot;, xml.Declaration.Standalone);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Intentionally Exposing the Halloween Problem==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Xml;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        XDocument xDocument = new XDocument(&lt;br /&gt;
          new XElement(&amp;quot;Books&amp;quot;,&lt;br /&gt;
          new XElement(&amp;quot;Book&amp;quot;,&lt;br /&gt;
          new XAttribute(&amp;quot;type&amp;quot;, &amp;quot;Author&amp;quot;),&lt;br /&gt;
          new XElement(&amp;quot;FirstName&amp;quot;, &amp;quot;J&amp;quot;),&lt;br /&gt;
          new XElement(&amp;quot;LastName&amp;quot;, &amp;quot;R&amp;quot;)),&lt;br /&gt;
          new XElement(&amp;quot;Book&amp;quot;,&lt;br /&gt;
          new XAttribute(&amp;quot;type&amp;quot;, &amp;quot;Author&amp;quot;),&lt;br /&gt;
          new XElement(&amp;quot;FirstName&amp;quot;, &amp;quot;E&amp;quot;),&lt;br /&gt;
          new XElement(&amp;quot;LastName&amp;quot;, &amp;quot;B&amp;quot;))));&lt;br /&gt;
        IEnumerable&amp;lt;XElement&amp;gt; elements =&lt;br /&gt;
          xDocument.Element(&amp;quot;Books&amp;quot;).Elements(&amp;quot;Book&amp;quot;);&lt;br /&gt;
        foreach (XElement element in elements) {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Source element: {0} : value= {1}&amp;quot;,element.Name, element.Value);&lt;br /&gt;
        }&lt;br /&gt;
        foreach (XElement element in elements) {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Removing {0}= {1} &amp;amp;iexcl;�&amp;quot;, element.Name, element.Value);&lt;br /&gt;
            element.Remove();&lt;br /&gt;
        }&lt;br /&gt;
        Console.WriteLine(xDocument);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Loading a Document with the XDocument.Load Method with LoadOptions==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Xml;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        XDocument xDocument = XDocument.Load(&amp;quot;book.xml&amp;quot;,LoadOptions.SetBaseUri | LoadOptions.SetLineInfo);&lt;br /&gt;
        Console.WriteLine(xDocument);&lt;br /&gt;
        XElement firstName = xDocument.Descendants(&amp;quot;FirstName&amp;quot;).First();&lt;br /&gt;
        Console.WriteLine(&amp;quot;FirstName Line:{0} Position:{1}&amp;quot;,((IXmlLineInfo)firstName).LineNumber,((IXmlLineInfo)firstName).LinePosition);&lt;br /&gt;
        Console.WriteLine(&amp;quot;FirstName Base URI:{0}&amp;quot;, firstName.BaseUri);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Query an XML document with Linq==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Data.Linq;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
class Program {&lt;br /&gt;
    static void Main(string[] args) {&lt;br /&gt;
        XDocument xml = XDocument.Load(@&amp;quot;Employee.xml&amp;quot;);&lt;br /&gt;
        var query = from p in xml.Elements(&amp;quot;people&amp;quot;).Elements(&amp;quot;person&amp;quot;)&lt;br /&gt;
                    where (int)p.Element(&amp;quot;id&amp;quot;) == 1&lt;br /&gt;
                    select p;&lt;br /&gt;
        foreach (var record in query) {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Employee: {0} {1}&amp;quot;,&lt;br /&gt;
                                                record.Element(&amp;quot;firstname&amp;quot;).Value,&lt;br /&gt;
                                                record.Element(&amp;quot;lastname&amp;quot;).Value);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Saving a Document with the XDocument.Save Method==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Xml;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
&lt;br /&gt;
        XDocument xDocument = new XDocument(&lt;br /&gt;
         new XElement(&amp;quot;Books&amp;quot;,&lt;br /&gt;
           new XElement(&amp;quot;Book&amp;quot;,&lt;br /&gt;
           new XAttribute(&amp;quot;type&amp;quot;, &amp;quot;Author&amp;quot;),&lt;br /&gt;
           new XAttribute(&amp;quot;experience&amp;quot;, &amp;quot;first-time&amp;quot;),&lt;br /&gt;
           new XAttribute(&amp;quot;language&amp;quot;, &amp;quot;English&amp;quot;),&lt;br /&gt;
           new XElement(&amp;quot;FirstName&amp;quot;, &amp;quot;J&amp;quot;),&lt;br /&gt;
           new XElement(&amp;quot;LastName&amp;quot;, &amp;quot;R&amp;quot;))));&lt;br /&gt;
        xDocument.Save(&amp;quot;book.xml&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Traversing Forward from an XElement Object via the NextNode Property==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Xml;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        XElement firstParticipant;&lt;br /&gt;
        XDocument xDocument = new XDocument(&lt;br /&gt;
         new XDeclaration(&amp;quot;1.0&amp;quot;, &amp;quot;UTF-8&amp;quot;, &amp;quot;yes&amp;quot;),&lt;br /&gt;
         new XDocumentType(&amp;quot;Books&amp;quot;, null, &amp;quot;Books.dtd&amp;quot;, null),&lt;br /&gt;
        new XProcessingInstruction(&amp;quot;Book&amp;quot;, &amp;quot;out-of-print&amp;quot;),&lt;br /&gt;
           new XElement(&amp;quot;Books&amp;quot;, firstParticipant =&lt;br /&gt;
           new XElement(&amp;quot;Book&amp;quot;,&lt;br /&gt;
           new XAttribute(&amp;quot;type&amp;quot;, &amp;quot;Author&amp;quot;),&lt;br /&gt;
       new XElement(&amp;quot;FirstName&amp;quot;, &amp;quot;J&amp;quot;),&lt;br /&gt;
         new XElement(&amp;quot;LastName&amp;quot;, &amp;quot;R&amp;quot;)),&lt;br /&gt;
         new XElement(&amp;quot;Book&amp;quot;,&lt;br /&gt;
         new XAttribute(&amp;quot;type&amp;quot;, &amp;quot;Author&amp;quot;),&lt;br /&gt;
         new XElement(&amp;quot;FirstName&amp;quot;, &amp;quot;E&amp;quot;),&lt;br /&gt;
         new XElement(&amp;quot;LastName&amp;quot;, &amp;quot;B&amp;quot;))));&lt;br /&gt;
        Console.WriteLine(firstParticipant.NextNode);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Using the LINQ to XML API to Create an XML Document and Adding Some Structure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Linq;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Xml;&lt;br /&gt;
using System.Xml.Linq;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        XDocument xDocument =&lt;br /&gt;
         new XDocument(&lt;br /&gt;
         new XElement(&amp;quot;Books&amp;quot;,&lt;br /&gt;
         new XElement(&amp;quot;Book&amp;quot;,&lt;br /&gt;
         new XAttribute(&amp;quot;type&amp;quot;, &amp;quot;Author&amp;quot;),&lt;br /&gt;
         new XElement(&amp;quot;FirstName&amp;quot;, &amp;quot;J&amp;quot;),&lt;br /&gt;
         new XElement(&amp;quot;LastName&amp;quot;, &amp;quot;R&amp;quot;))));&lt;br /&gt;
        Console.WriteLine(xDocument.ToString());&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>