<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VB.Net%2FXML%2FXML_DataSet</id>
		<title>VB.Net/XML/XML DataSet - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VB.Net%2FXML%2FXML_DataSet"/>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net/XML/XML_DataSet&amp;action=history"/>
		<updated>2026-04-06T00:06:00Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VB.Net/XML/XML_DataSet&amp;diff=306&amp;oldid=prev</id>
		<title> в 16:40, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net/XML/XML_DataSet&amp;diff=306&amp;oldid=prev"/>
				<updated>2010-05-26T16:40:06Z</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;Версия 16:40, 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://www.vbex.ru/index.php?title=VB.Net/XML/XML_DataSet&amp;diff=307&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net/XML/XML_DataSet&amp;diff=307&amp;oldid=prev"/>
				<updated>2010-05-26T12:42:34Z</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;==Load xml document to DataSet==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.Xml&lt;br /&gt;
Imports System.Xml.Schema&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Imports System.Drawing&lt;br /&gt;
Imports System.Drawing.Drawing2D&lt;br /&gt;
Imports System.Collections&lt;br /&gt;
Imports System.Data&lt;br /&gt;
Imports System.Windows.Forms&lt;br /&gt;
&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
    &lt;br /&gt;
    Shared Sub Main()&lt;br /&gt;
        Dim DSStudentClasses As New DataSet()&lt;br /&gt;
        Dim tmpNode As XmlNode&lt;br /&gt;
        &amp;quot; Load the schema into the DataSet&lt;br /&gt;
        DSStudentClasses.ReadXmlSchema(&amp;quot;StudentClasses.xsd&amp;quot;)&lt;br /&gt;
        &amp;quot; Load the DataSet into the data document&lt;br /&gt;
        Dim XDocStudents As New XmlDataDocument(DSStudentClasses)&lt;br /&gt;
        &amp;quot; Load the data into the data document&lt;br /&gt;
        XDocStudents.Load(&amp;quot;Students.xml&amp;quot;)&lt;br /&gt;
        Console.WriteLine(&amp;quot;Students in DataSet:&amp;quot;)&lt;br /&gt;
        Dim Row As DataRow&lt;br /&gt;
        For Each Row In DSStudentClasses.Tables(&amp;quot;Student&amp;quot;).Rows&lt;br /&gt;
            Console.WriteLine(&amp;quot;{0}:{1}&amp;quot;, Row(&amp;quot;Name&amp;quot;), Row(&amp;quot;GPA&amp;quot;))&lt;br /&gt;
            tmpNode = XDocStudents.GetElementFromRow(Row)&lt;br /&gt;
            Console.WriteLine( _&lt;br /&gt;
                  &amp;quot;   Locker Combination (from XML, not DataSet): {0}&amp;quot;, _&lt;br /&gt;
                  tmpNode.SelectSingleNode(&amp;quot;LockerCombination&amp;quot;).InnerText)&lt;br /&gt;
            Dim Subject As DataRow&lt;br /&gt;
            For Each Subject In Row.GetChildRows(&amp;quot;StudentClasses&amp;quot;)&lt;br /&gt;
                Console.WriteLine(&amp;quot;   {0}&amp;quot;, Subject(&amp;quot;Title&amp;quot;))&lt;br /&gt;
            Next&lt;br /&gt;
        Next&lt;br /&gt;
    End Sub&lt;br /&gt;
End Class&lt;br /&gt;
&amp;quot;student.xml&lt;br /&gt;
&amp;quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;Students&amp;gt;&lt;br /&gt;
&amp;quot;  &amp;lt;Student ID=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;Name&amp;gt;Joe Wang&amp;lt;/Name&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;Age&amp;gt;30&amp;lt;/Age&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;GPA&amp;gt;2.95&amp;lt;/GPA&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;LockerCombination&amp;gt;10-12-35&amp;lt;/LockerCombination&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;Class Title=&amp;quot;Biology&amp;quot; Room=&amp;quot;100&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;Class Title=&amp;quot;English Lit&amp;quot; Room=&amp;quot;101&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;  &amp;lt;/Student&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;/Students&amp;gt;&lt;br /&gt;
&amp;quot;student.xsd&lt;br /&gt;
&amp;quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;xs:schema id=&amp;quot;Students&amp;quot; xmlns=&amp;quot;&amp;quot;&lt;br /&gt;
&amp;quot;                        xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;                         xmlns:msdata=&amp;quot;urn:schemas-microsoft-com:xml-msdata&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;  &amp;lt;xs:element name=&amp;quot;Students&amp;quot; msdata:IsDataSet=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;xs:choice maxOccurs=&amp;quot;unbounded&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;        &amp;lt;xs:element name=&amp;quot;Student&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;          &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
&amp;quot;            &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
&amp;quot;              &amp;lt;xs:element name=&amp;quot;Name&amp;quot; type=&amp;quot;xs:string&amp;quot;&lt;br /&gt;
&amp;quot;                          minOccurs=&amp;quot;0&amp;quot; msdata:Ordinal=&amp;quot;0&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;              &amp;lt;xs:element name=&amp;quot;GPA&amp;quot; type=&amp;quot;xs:float&amp;quot;&lt;br /&gt;
&amp;quot;                          minOccurs=&amp;quot;0&amp;quot; msdata:Ordinal=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;              &amp;lt;xs:element name=&amp;quot;Class&amp;quot;&lt;br /&gt;
&amp;quot;                          minOccurs=&amp;quot;0&amp;quot; maxOccurs=&amp;quot;unbounded&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;                &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
&amp;quot;                 &amp;lt;xs:attribute name=&amp;quot;Title&amp;quot; type=&amp;quot;xs:string&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;                  &amp;lt;xs:attribute name=&amp;quot;Room&amp;quot; type=&amp;quot;xs:string&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;                  &amp;lt;xs:attribute name=&amp;quot;StudentID&amp;quot; type=&amp;quot;xs:int&amp;quot;&lt;br /&gt;
&amp;quot;                                use=&amp;quot;prohibited&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;                &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
&amp;quot;              &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
&amp;quot;            &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
&amp;quot;            &amp;lt;xs:attribute name=&amp;quot;ID&amp;quot; type=&amp;quot;xs:int&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;          &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
&amp;quot;        &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;/xs:choice&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;xs:unique name=&amp;quot;StudentID&amp;quot; msdata:PrimaryKey=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;xs:selector xpath=&amp;quot;.//Student&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;xs:field xpath=&amp;quot;@ID&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;/xs:unique&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;xs:keyref name=&amp;quot;StudentClasses&amp;quot; refer=&amp;quot;StudentID&amp;quot;&lt;br /&gt;
&amp;quot;               msdata:IsNested=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;xs:selector xpath=&amp;quot;.//Class&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;xs:field xpath=&amp;quot;@StudentID&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;    &amp;lt;/xs:keyref&amp;gt;&lt;br /&gt;
&amp;quot;  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;/xs:schema&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Read XML schema with DataSet and output its structure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.Xml&lt;br /&gt;
Imports System.Xml.Schema&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Imports System.Collections&lt;br /&gt;
Imports System.Data&lt;br /&gt;
&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
    &lt;br /&gt;
    Shared Sub Main()&lt;br /&gt;
        Dim MyDS As New DataSet()&lt;br /&gt;
        MyDS.ReadXmlSchema(&amp;quot;book.xdr&amp;quot;)&lt;br /&gt;
        Console.WriteLine(&amp;quot;Book Structure:&amp;quot;)&lt;br /&gt;
        Dim Table As DataTable&lt;br /&gt;
        For Each Table In MyDS.Tables&lt;br /&gt;
            Console.WriteLine(&amp;quot;Table {0}&amp;quot;, Table.TableName)&lt;br /&gt;
            Dim Column As DataColumn&lt;br /&gt;
            For Each Column In Table.Columns&lt;br /&gt;
                Console.WriteLine(&amp;quot;  {0}&amp;quot;, Column.ColumnName)&lt;br /&gt;
            Next&lt;br /&gt;
        Next&lt;br /&gt;
    End Sub&lt;br /&gt;
End Class&lt;br /&gt;
&amp;quot;book.xdr&lt;br /&gt;
&amp;quot;&amp;lt;?xml version = &amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;Schema xmlns = &amp;quot;urn:schemas-microsoft-com:xml-data&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;ElementType name = &amp;quot;title&amp;quot; content = &amp;quot;textOnly&amp;quot; &lt;br /&gt;
&amp;quot;      model = &amp;quot;closed&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;ElementType name = &amp;quot;book&amp;quot; content = &amp;quot;eltOnly&amp;quot; model = &amp;quot;closed&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;element type = &amp;quot;title&amp;quot; minOccurs = &amp;quot;1&amp;quot; maxOccurs = &amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;/ElementType&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;ElementType name = &amp;quot;books&amp;quot; content = &amp;quot;eltOnly&amp;quot; model = &amp;quot;closed&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;element type = &amp;quot;book&amp;quot; minOccurs = &amp;quot;0&amp;quot; maxOccurs = &amp;quot;*&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;/ElementType&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;/Schema&amp;gt;&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Update and insert XML Element with DataSet==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.Xml&lt;br /&gt;
Imports System.Xml.Schema&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Imports System.Collections&lt;br /&gt;
Imports System.Data&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
    &lt;br /&gt;
    Shared Sub Main()&lt;br /&gt;
        Dim MyDS As New DataSet()&lt;br /&gt;
        MyDS.ReadXmlSchema(&amp;quot;book.xdr&amp;quot;)&lt;br /&gt;
        MyDS.ReadXml(&amp;quot;book.xml&amp;quot;)&lt;br /&gt;
        MyDS.AcceptChanges()&lt;br /&gt;
        Dim NewBook As DataRow = MyDS.Tables(&amp;quot;Book&amp;quot;).NewRow()&lt;br /&gt;
        NewBook(&amp;quot;Title&amp;quot;) = &amp;quot;This ADO.NET Book&amp;quot;&lt;br /&gt;
        MyDS.Tables(&amp;quot;Book&amp;quot;).Rows.Add(NewBook)&lt;br /&gt;
        MyDS.WriteXml(&amp;quot;Books_Changes.xml&amp;quot;, XmlWriteMode.DiffGram)&lt;br /&gt;
        MyDS.AcceptChanges()&lt;br /&gt;
        MyDS.WriteXml(&amp;quot;Books_New.xml&amp;quot;, XmlWriteMode.IgnoreSchema)&lt;br /&gt;
    End Sub&lt;br /&gt;
End Class&lt;br /&gt;
&amp;quot;book.xdr&lt;br /&gt;
&amp;quot;&amp;lt;?xml version = &amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;Schema xmlns = &amp;quot;urn:schemas-microsoft-com:xml-data&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;ElementType name = &amp;quot;title&amp;quot; content = &amp;quot;textOnly&amp;quot; &lt;br /&gt;
&amp;quot;      model = &amp;quot;closed&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;ElementType name = &amp;quot;book&amp;quot; content = &amp;quot;eltOnly&amp;quot; model = &amp;quot;closed&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;element type = &amp;quot;title&amp;quot; minOccurs = &amp;quot;1&amp;quot; maxOccurs = &amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;/ElementType&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;ElementType name = &amp;quot;books&amp;quot; content = &amp;quot;eltOnly&amp;quot; model = &amp;quot;closed&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;      &amp;lt;element type = &amp;quot;book&amp;quot; minOccurs = &amp;quot;0&amp;quot; maxOccurs = &amp;quot;*&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;quot;   &amp;lt;/ElementType&amp;gt;&lt;br /&gt;
&amp;quot;&amp;lt;/Schema&amp;gt;&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>