DataTable.WriteXmlSchema Metoda

Definicja

Zapisuje bieżącą strukturę danych DataTable jako schemat XML.Writes the current data structure of the DataTable as an XML schema.

Przeciążenia

WriteXmlSchema(Stream)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego strumienia.Writes the current data structure of the DataTable as an XML schema to the specified stream.

WriteXmlSchema(TextWriter)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej TextWriter.Writes the current data structure of the DataTable as an XML schema using the specified TextWriter.

WriteXmlSchema(String)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego pliku.Writes the current data structure of the DataTable as an XML schema to the specified file.

WriteXmlSchema(XmlWriter)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej XmlWriter.Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter.

WriteXmlSchema(Stream, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego strumienia.Writes the current data structure of the DataTable as an XML schema to the specified stream. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(TextWriter, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej TextWriter.Writes the current data structure of the DataTable as an XML schema using the specified TextWriter. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(XmlWriter, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej XmlWriter.Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(String, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego pliku.Writes the current data structure of the DataTable as an XML schema to the specified file. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

Przykłady

Następująca aplikacja konsolowa tworzy dwa wystąpienia DataTable, dodaje każdy do DataSet, tworzy DataRelation odnoszące się do dwóch tabel, a następnie używa metody WriteXmlSchema do zapisywania danych zawartych w tabeli nadrzędnej do TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXmlSchema method to write the data contained within the parent table to a TextWriter. W przykładzie pokazano zachowanie podczas ustawiania parametru writeHierarchy dla każdej wartości.The example demonstrates the behavior when setting the writeHierarchy parameter to each of its values.

Uwaga

Ten przykład pokazuje, jak używać jednej ze przeciążonych wersji WriteXmlSchema, aby poznać inne przykłady, które mogą być dostępne, zapoznaj się z tematami dotyczącymi poszczególnych przeciążeń.This example shows how to use one of the overloaded versions of WriteXmlSchema For other examples that might be available, see the individual overload topics.

static void Main()
{
    DataSet ds = new DataSet();
    DataTable customerTable = GetCustomers();
    DataTable orderTable = GetOrders();

    ds.Tables.Add(customerTable);
    ds.Tables.Add(orderTable);
    ds.Relations.Add("CustomerOrder",
        new DataColumn[] { customerTable.Columns[0] },
        new DataColumn[] { orderTable.Columns[1] }, true);

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, true);
    PrintOutput(writer, "Customer table, with hierarchy");

    Console.WriteLine("Press any key to continue.");
    Console.ReadKey();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(System.Int32));
    table.Columns.Add("Name", typeof(System.String));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    table.AcceptChanges();
    return table;
}

private static DataTable GetOrders()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create three columns; OrderID, CustomerID, and OrderDate.
    table.Columns.Add(new DataColumn("OrderID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("CustomerID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("OrderDate", typeof(System.DateTime)));

    // Set the OrderID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { table.Columns[0] };

    table.Rows.Add(new object[] { 1, 1, "12/2/2003" });
    table.Rows.Add(new object[] { 2, 1, "1/3/2004" });
    table.Rows.Add(new object[] { 3, 2, "11/13/2004" });
    table.Rows.Add(new object[] { 4, 3, "5/16/2004" });
    table.Rows.Add(new object[] { 5, 3, "5/22/2004" });
    table.Rows.Add(new object[] { 6, 4, "6/15/2004" });
    table.AcceptChanges();
    return table;
}

private static void PrintOutput(System.IO.TextWriter writer, 
    string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(writer.ToString());
}
Sub Main()
  Dim ds As New DataSet
  Dim customerTable As DataTable = GetCustomers()
  Dim orderTable As DataTable = GetOrders()

  ds.Tables.Add(customerTable)
  ds.Tables.Add(orderTable)
  ds.Relations.Add("CustomerOrder", _
   New DataColumn() {customerTable.Columns(0)}, _
   New DataColumn() {orderTable.Columns(1)}, True)

  Dim writer As New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, True)
  PrintOutput(writer, "Customer table, with hierarchy")

  Console.WriteLine("Press any key to continue.")
  Console.ReadKey()
End Sub

Private Function GetOrders() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create three columns, OrderID, CustomerID, and OrderDate.
  table.Columns.Add(New DataColumn("OrderID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("CustomerID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("OrderDate", GetType(System.DateTime)))

  ' Set the OrderID column as the primary key column.
  table.PrimaryKey = New DataColumn() {table.Columns(0)}

  table.Rows.Add(New Object() {1, 1, #12/2/2003#})
  table.Rows.Add(New Object() {2, 1, #1/3/2004#})
  table.Rows.Add(New Object() {3, 2, #11/13/2004#})
  table.Rows.Add(New Object() {4, 3, #5/16/2004#})
  table.Rows.Add(New Object() {5, 3, #5/22/2004#})
  table.Rows.Add(New Object() {6, 4, #6/15/2004#})
  table.AcceptChanges()
  Return table
End Function

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create two columns, ID and Name.
  Dim idColumn As DataColumn = table.Columns.Add("ID", GetType(System.Int32))
  table.Columns.Add("Name", GetType(System.String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  table.AcceptChanges()
  Return table
End Function

Private Sub PrintOutput( _
   ByVal writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

W przykładzie są wyświetlane następujące dane wyjściowe w oknie konsoli:The example displays the following output in the console window:

==============================  
Customer table, without hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Ta  
ble1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
  </xs:element>  
</xs:schema>  
==============================  
Customer table, with hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
        <xs:element name="Table2">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="OrderID" type="xs:int" />  
              <xs:element name="CustomerID" type="xs:int" minOccurs="0" />  
              <xs:element name="OrderDate" type="xs:dateTime" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
    <xs:unique name="Table2_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="OrderID" />  
    </xs:unique>  
    <xs:keyref name="CustomerOrder" refer="Constraint1">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="CustomerID" />  
    </xs:keyref>  
  </xs:element>  
</xs:schema>  

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

WriteXmlSchema(Stream)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego strumienia.Writes the current data structure of the DataTable as an XML schema to the specified stream.

public:
 void WriteXmlSchema(System::IO::Stream ^ stream);
public void WriteXmlSchema (System.IO.Stream stream);
member this.WriteXmlSchema : System.IO.Stream -> unit

Parametry

stream
Stream

Strumień, do którego zostanie zapisany schemat XML.The stream to which the XML schema will be written.

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zobacz też

WriteXmlSchema(TextWriter)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej TextWriter.Writes the current data structure of the DataTable as an XML schema using the specified TextWriter.

public:
 void WriteXmlSchema(System::IO::TextWriter ^ writer);
public void WriteXmlSchema (System.IO.TextWriter writer);
member this.WriteXmlSchema : System.IO.TextWriter -> unit
Public Sub WriteXmlSchema (writer As TextWriter)

Parametry

writer
TextWriter

TextWriter, z którym ma zostać zapisany.The TextWriter with which to write.

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zobacz też

WriteXmlSchema(String)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego pliku.Writes the current data structure of the DataTable as an XML schema to the specified file.

public:
 void WriteXmlSchema(System::String ^ fileName);
public void WriteXmlSchema (string fileName);
member this.WriteXmlSchema : string -> unit
Public Sub WriteXmlSchema (fileName As String)

Parametry

fileName
String

Nazwa pliku do użycia.The name of the file to use.

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zobacz też

WriteXmlSchema(XmlWriter)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej XmlWriter.Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter.

public:
 void WriteXmlSchema(System::Xml::XmlWriter ^ writer);
public void WriteXmlSchema (System.Xml.XmlWriter writer);
member this.WriteXmlSchema : System.Xml.XmlWriter -> unit
Public Sub WriteXmlSchema (writer As XmlWriter)

Parametry

writer
XmlWriter

Obiekt XmlWriter do użycia.The XmlWriter to use.

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zobacz też

WriteXmlSchema(Stream, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego strumienia.Writes the current data structure of the DataTable as an XML schema to the specified stream. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

public:
 void WriteXmlSchema(System::IO::Stream ^ stream, bool writeHierarchy);
public void WriteXmlSchema (System.IO.Stream stream, bool writeHierarchy);
member this.WriteXmlSchema : System.IO.Stream * bool -> unit

Parametry

stream
Stream

Strumień, do którego zostanie zapisany schemat XML.The stream to which the XML schema will be written.

writeHierarchy
Boolean

Jeśli true, Zapisz schemat bieżącej tabeli i wszystkich jej obiektów podrzędnych.If true, write the schema of the current table and all its descendants. Jeśli false (wartość domyślna), Zapisz schemat tylko dla bieżącej tabeli.If false (the default value), write the schema for the current table only.

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zwykle Metoda WriteXmlSchema zapisuje schemat tylko dla bieżącej tabeli.Normally the WriteXmlSchema method writes the schema only for the current table. Aby zapisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, pokrewnych tabel, wywołaj metodę z parametrem writeHierarchy ustawionym na true.To write the schema for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

Zobacz też

WriteXmlSchema(TextWriter, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej TextWriter.Writes the current data structure of the DataTable as an XML schema using the specified TextWriter. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

public:
 void WriteXmlSchema(System::IO::TextWriter ^ writer, bool writeHierarchy);
public void WriteXmlSchema (System.IO.TextWriter writer, bool writeHierarchy);
member this.WriteXmlSchema : System.IO.TextWriter * bool -> unit
Public Sub WriteXmlSchema (writer As TextWriter, writeHierarchy As Boolean)

Parametry

writer
TextWriter

TextWriter, z którym ma zostać zapisany.The TextWriter with which to write.

writeHierarchy
Boolean

Jeśli true, Zapisz schemat bieżącej tabeli i wszystkich jej obiektów podrzędnych.If true, write the schema of the current table and all its descendants. Jeśli false (wartość domyślna), Zapisz schemat tylko dla bieżącej tabeli.If false (the default value), write the schema for the current table only.

Przykłady

Następująca aplikacja konsolowa tworzy dwa wystąpienia DataTable, dodaje każdy do DataSet, tworzy DataRelation odnoszące się do dwóch tabel, a następnie używa metody WriteXmlSchema do zapisywania danych zawartych w tabeli nadrzędnej do TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXmlSchema method to write the data contained within the parent table to a TextWriter. W przykładzie pokazano zachowanie podczas ustawiania parametru writeHierarchy dla każdej wartości.The example demonstrates the behavior when setting the writeHierarchy parameter to each of its values.

static void Main()
{
    DataSet ds = new DataSet();
    DataTable customerTable = GetCustomers();
    DataTable orderTable = GetOrders();

    ds.Tables.Add(customerTable);
    ds.Tables.Add(orderTable);
    ds.Relations.Add("CustomerOrder",
        new DataColumn[] { customerTable.Columns[0] },
        new DataColumn[] { orderTable.Columns[1] }, true);

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(writer, true);
    PrintOutput(writer, "Customer table, with hierarchy");

    Console.WriteLine("Press any key to continue.");
    Console.ReadKey();
}

private static DataTable GetCustomers()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create two columns, ID and Name.
    DataColumn idColumn = table.Columns.Add("ID", typeof(System.Int32));
    table.Columns.Add("Name", typeof(System.String));

    // Set the ID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { idColumn };

    table.Rows.Add(new object[] { 1, "Mary" });
    table.Rows.Add(new object[] { 2, "Andy" });
    table.Rows.Add(new object[] { 3, "Peter" });
    table.Rows.Add(new object[] { 4, "Russ" });
    table.AcceptChanges();
    return table;
}

private static DataTable GetOrders()
{
    // Create sample Customers table, in order
    // to demonstrate the behavior of the DataTableReader.
    DataTable table = new DataTable();

    // Create three columns; OrderID, CustomerID, and OrderDate.
    table.Columns.Add(new DataColumn("OrderID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("CustomerID", typeof(System.Int32)));
    table.Columns.Add(new DataColumn("OrderDate", typeof(System.DateTime)));

    // Set the OrderID column as the primary key column.
    table.PrimaryKey = new DataColumn[] { table.Columns[0] };

    table.Rows.Add(new object[] { 1, 1, "12/2/2003" });
    table.Rows.Add(new object[] { 2, 1, "1/3/2004" });
    table.Rows.Add(new object[] { 3, 2, "11/13/2004" });
    table.Rows.Add(new object[] { 4, 3, "5/16/2004" });
    table.Rows.Add(new object[] { 5, 3, "5/22/2004" });
    table.Rows.Add(new object[] { 6, 4, "6/15/2004" });
    table.AcceptChanges();
    return table;
}

private static void PrintOutput(System.IO.TextWriter writer, string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(writer.ToString());
}
Sub Main()
  Dim ds As New DataSet
  Dim customerTable As DataTable = GetCustomers()
  Dim orderTable As DataTable = GetOrders()

  ds.Tables.Add(customerTable)
  ds.Tables.Add(orderTable)
  ds.Relations.Add("CustomerOrder", _
   New DataColumn() {customerTable.Columns(0)}, _
   New DataColumn() {orderTable.Columns(1)}, True)

  Dim writer As New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXmlSchema(writer, True)
  PrintOutput(writer, "Customer table, with hierarchy")

  Console.WriteLine("Press any key to continue.")
  Console.ReadKey()
End Sub

Private Function GetOrders() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create three columns, OrderID, CustomerID, and OrderDate.
  table.Columns.Add(New DataColumn("OrderID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("CustomerID", GetType(System.Int32)))
  table.Columns.Add(New DataColumn("OrderDate", GetType(System.DateTime)))

  ' Set the OrderID column as the primary key column.
  table.PrimaryKey = New DataColumn() {table.Columns(0)}

  table.Rows.Add(New Object() {1, 1, #12/2/2003#})
  table.Rows.Add(New Object() {2, 1, #1/3/2004#})
  table.Rows.Add(New Object() {3, 2, #11/13/2004#})
  table.Rows.Add(New Object() {4, 3, #5/16/2004#})
  table.Rows.Add(New Object() {5, 3, #5/22/2004#})
  table.Rows.Add(New Object() {6, 4, #6/15/2004#})
  table.AcceptChanges()
  Return table
End Function

Private Function GetCustomers() As DataTable
  ' Create sample Customers table, in order
  ' to demonstrate the behavior of the DataTableReader.
  Dim table As New DataTable

  ' Create two columns, ID and Name.
  Dim idColumn As DataColumn = table.Columns.Add("ID", _
      GetType(System.Int32))
  table.Columns.Add("Name", GetType(System.String))

  ' Set the ID column as the primary key column.
  table.PrimaryKey = New DataColumn() {idColumn}

  table.Rows.Add(New Object() {1, "Mary"})
  table.Rows.Add(New Object() {2, "Andy"})
  table.Rows.Add(New Object() {3, "Peter"})
  table.Rows.Add(New Object() {4, "Russ"})
  table.AcceptChanges()
  Return table
End Function

Private Sub PrintOutput( _
   ByVal writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

W przykładzie są wyświetlane następujące dane wyjściowe w oknie konsoli:The example displays the following output in the console window:

==============================  
Customer table, without hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Ta  
ble1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
  </xs:element>  
</xs:schema>  
==============================  
Customer table, with hierarchy  
==============================  
<?xml version="1.0" encoding="utf-16"?>  
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">  
  <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:MainDataTable="Table1">  
    <xs:complexType>  
      <xs:choice minOccurs="0" maxOccurs="unbounded">  
        <xs:element name="Table1">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="ID" type="xs:int" />  
              <xs:element name="Name" type="xs:string" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
        <xs:element name="Table2">  
          <xs:complexType>  
            <xs:sequence>  
              <xs:element name="OrderID" type="xs:int" />  
              <xs:element name="CustomerID" type="xs:int" minOccurs="0" />  
              <xs:element name="OrderDate" type="xs:dateTime" minOccurs="0" />  
            </xs:sequence>  
          </xs:complexType>  
        </xs:element>  
      </xs:choice>  
    </xs:complexType>  
    <xs:unique name="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table1" />  
      <xs:field xpath="ID" />  
    </xs:unique>  
    <xs:unique name="Table2_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="OrderID" />  
    </xs:unique>  
    <xs:keyref name="CustomerOrder" refer="Constraint1">  
      <xs:selector xpath=".//Table2" />  
      <xs:field xpath="CustomerID" />  
    </xs:keyref>  
  </xs:element>  
</xs:schema>  

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zwykle Metoda WriteXmlSchema zapisuje schemat tylko dla bieżącej tabeli.Normally the WriteXmlSchema method writes the schema only for the current table. Aby zapisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, pokrewnych tabel, wywołaj metodę z parametrem writeHierarchy ustawionym na true.To write the schema for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

Zobacz też

WriteXmlSchema(XmlWriter, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML przy użyciu podanej XmlWriter.Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

public:
 void WriteXmlSchema(System::Xml::XmlWriter ^ writer, bool writeHierarchy);
public void WriteXmlSchema (System.Xml.XmlWriter writer, bool writeHierarchy);
member this.WriteXmlSchema : System.Xml.XmlWriter * bool -> unit
Public Sub WriteXmlSchema (writer As XmlWriter, writeHierarchy As Boolean)

Parametry

writer
XmlWriter

XmlWriter używany do pisania dokumentu.The XmlWriter used to write the document.

writeHierarchy
Boolean

Jeśli true, Zapisz schemat bieżącej tabeli i wszystkich jej obiektów podrzędnych.If true, write the schema of the current table and all its descendants. Jeśli false (wartość domyślna), Zapisz schemat tylko dla bieżącej tabeli.If false (the default value), write the schema for the current table only.

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zwykle Metoda WriteXmlSchema zapisuje schemat tylko dla bieżącej tabeli.Normally the WriteXmlSchema method writes the schema only for the current table. Aby zapisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, pokrewnych tabel, wywołaj metodę z parametrem writeHierarchy ustawionym na true.To write the schema for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

Zobacz też

WriteXmlSchema(String, Boolean)

Zapisuje bieżącą strukturę danych DataTable jako schemat XML do określonego pliku.Writes the current data structure of the DataTable as an XML schema to the specified file. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw parametr writeHierarchy na true.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

public:
 void WriteXmlSchema(System::String ^ fileName, bool writeHierarchy);
public void WriteXmlSchema (string fileName, bool writeHierarchy);
member this.WriteXmlSchema : string * bool -> unit
Public Sub WriteXmlSchema (fileName As String, writeHierarchy As Boolean)

Parametry

fileName
String

Nazwa pliku do użycia.The name of the file to use.

writeHierarchy
Boolean

Jeśli true, Zapisz schemat bieżącej tabeli i wszystkich jej obiektów podrzędnych.If true, write the schema of the current table and all its descendants. Jeśli false (wartość domyślna), Zapisz schemat tylko dla bieżącej tabeli.If false (the default value), write the schema for the current table only.

Uwagi

Użyj metody WriteXmlSchema, aby napisać schemat DataTable do dokumentu XML.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. Schemat zawiera definicje tabel, relacji i ograniczeń.The schema includes table, relation, and constraint definitions.

Schemat XML jest zapisywana przy użyciu standardu XSD.The XML schema is written using the XSD standard.

Aby zapisać dane w dokumencie XML, użyj metody WriteXml.To write the data to an XML document, use the WriteXml method.

Zwykle Metoda WriteXmlSchema zapisuje schemat tylko dla bieżącej tabeli.Normally the WriteXmlSchema method writes the schema only for the current table. Aby zapisać schemat dla bieżącej tabeli i jej całego elementu podrzędnego, pokrewnych tabel, wywołaj metodę z parametrem writeHierarchy ustawionym na true.To write the schema for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

Zobacz też

Dotyczy