Sdílet prostřednictvím


DataTable.WriteXml Metoda

Definice

Zapíše aktuální obsah souboru DataTable jako XML.

Přetížení

WriteXml(TextWriter, Boolean)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného TextWriterobjektu . Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

WriteXml(TextWriter, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro DataTable pomocí zadaných TextWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(String, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro pomocí DataTable zadaného souboru a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(Stream, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro do DataTable zadaného souboru pomocí zadaného XmlWriteModesouboru . Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(XmlWriter, Boolean)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného XmlWriterobjektu .

WriteXml(XmlWriter, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro DataTable pomocí zadaných XmlWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(Stream, XmlWriteMode, Boolean)

Zapíše aktuální data a volitelně schéma pro do DataTable zadaného souboru pomocí zadaného XmlWriteModesouboru . Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

WriteXml(TextWriter, XmlWriteMode, Boolean)

Zapíše aktuální data a volitelně schéma pro DataTable pomocí zadaných TextWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

WriteXml(String, Boolean)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného souboru. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

WriteXml(Stream, Boolean)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného Streamobjektu . Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

WriteXml(XmlWriter, XmlWriteMode, Boolean)

Zapíše aktuální data a volitelně schéma pro DataTable pomocí zadaných XmlWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

WriteXml(String)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného souboru.

WriteXml(TextWriter)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného TextWriterobjektu .

WriteXml(Stream)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného Streamobjektu .

WriteXml(String, XmlWriteMode, Boolean)

Zapíše aktuální data a volitelně schéma pro pomocí DataTable zadaného souboru a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

WriteXml(XmlWriter)

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného XmlWriterobjektu .

Příklady

Následující konzolová aplikace vytvoří dvě DataTable instance, každou přidá do objektu DataSet, vytvoří objekt, který DataRelation tyto dvě tabulky souvisí, a pak použije metodu WriteXml k zápisu dat obsažených v nadřazené tabulce do objektu TextWriter. Příklad ukazuje chování při nastavení parametru writeHierarchy na každou z jeho hodnot.

Poznámka

Tento příklad ukazuje, jak použít jednu z přetížených verzí WriteXml. Další příklady, které mohou být k dispozici, naleznete v popisu jednotlivých přetížených verzí.

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.WriteXml(writer, XmlWriteMode.WriteSchema, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, 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.WriteXml(writer, XmlWriteMode.WriteSchema, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, 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

V příkladu se zobrazí následující výstup v okně konzoly:

==============================
Customer table, without hierarchy
==============================
<NewDataSet>
  <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:choice>
      </xs:complexType>
      <xs:unique name="Constraint1" msdata:PrimaryKey="true">
        <xs:selector xpath=".//Table1" />
        <xs:field xpath="ID" />
      </xs:unique>
    </xs:element>
  </xs:schema>
  <Table1>
    <ID>1</ID>
    <Name>Mary</Name>
  </Table1>
  <Table1>
    <ID>2</ID>
    <Name>Andy</Name>
  </Table1>
  <Table1>
    <ID>3</ID>
    <Name>Peter</Name>
  </Table1>
  <Table1>
    <ID>4</ID>
    <Name>Russ</Name>
  </Table1>
</NewDataSet>
==============================
Customer table, with hierarchy
==============================
<NewDataSet>
  <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" m
sdata: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>
  <Table1>
    <ID>1</ID>
    <Name>Mary</Name>
  </Table1>
  <Table1>
    <ID>2</ID>
    <Name>Andy</Name>
  </Table1>
  <Table1>
    <ID>3</ID>
    <Name>Peter</Name>
  </Table1>
  <Table1>
    <ID>4</ID>
    <Name>Russ</Name>
  </Table1>
  <Table2>
    <OrderID>1</OrderID>
    <CustomerID>1</CustomerID>
    <OrderDate>2003-12-02T00:00:00.0000000-08:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>2</OrderID>
    <CustomerID>1</CustomerID>
    <OrderDate>2004-01-03T00:00:00.0000000-08:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>3</OrderID>
    <CustomerID>2</CustomerID>
    <OrderDate>2004-11-13T00:00:00.0000000-08:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>4</OrderID>
    <CustomerID>3</CustomerID>
    <OrderDate>2004-05-16T00:00:00.0000000-07:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>5</OrderID>
    <CustomerID>3</CustomerID>
    <OrderDate>2004-05-22T00:00:00.0000000-07:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>6</OrderID>
    <CustomerID>4</CustomerID>
    <OrderDate>2004-06-15T00:00:00.0000000-07:00</OrderDate>
  </Table2>
</NewDataSet>

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. K zápisu dat i schématu použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

WriteXml(TextWriter, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného TextWriterobjektu . Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

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

Parametry

writer
TextWriter

Hodnota TextWriter , pomocí které chcete zapsat obsah.

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapisujte data pouze pro aktuální tabulku.

Příklady

Následující konzolová aplikace vytvoří dvě DataTable instance, každou přidá do objektu DataSet, vytvoří objekt, který DataRelation tyto dvě tabulky souvisí, a pak použije metodu WriteXml k zápisu dat obsažených v nadřazené tabulce do objektu TextWriter. Příklad ukazuje chování při nastavení parametru writeHierarchy na true.

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.WriteXml(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 stream,
    string caption)
{
    Console.WriteLine("==============================");
    Console.WriteLine(caption);
    Console.WriteLine("==============================");
    Console.WriteLine(stream.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.WriteXml(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 stream As System.IO.TextWriter, ByVal caption As String)

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

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Za normálních okolností WriteXml metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a všechny její potomky související tabulky, zavolejte metodu s parametrem nastaveným writeHierarchy na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(TextWriter, XmlWriteMode)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně schéma pro DataTable pomocí zadaných TextWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema.

public:
 void WriteXml(System::IO::TextWriter ^ writer, System::Data::XmlWriteMode mode);
public void WriteXml (System.IO.TextWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml (System.IO.TextWriter writer, System.Data.XmlWriteMode mode);
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (writer As TextWriter, mode As XmlWriteMode)

Parametry

writer
TextWriter

Slouží TextWriter k zápisu dokumentu.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String, XmlWriteMode)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně schéma pro DataTable pomocí zadaného souboru a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu .

public:
 void WriteXml(System::String ^ fileName, System::Data::XmlWriteMode mode);
public void WriteXml (string fileName, System.Data.XmlWriteMode mode);
member this.WriteXml : string * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (fileName As String, mode As XmlWriteMode)

Parametry

fileName
String

Název souboru, do kterého budou data zapsána.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. K zápisu dat i schématu použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream, XmlWriteMode)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně schéma pro DataTable do zadaného souboru pomocí zadaného XmlWriteModesouboru . Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu .

public:
 void WriteXml(System::IO::Stream ^ stream, System::Data::XmlWriteMode mode);
public void WriteXml (System.IO.Stream? stream, System.Data.XmlWriteMode mode);
public void WriteXml (System.IO.Stream stream, System.Data.XmlWriteMode mode);
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode)

Parametry

stream
Stream

Datový proud, do kterého budou zapsána data

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah DataTable souboru jako XML pomocí zadaného XmlWriterobjektu .

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

Parametry

writer
XmlWriter

Pomocí XmlWriter kterého se má psát obsah.

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapište data pouze pro aktuální tabulku.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. K zápisu dat i schématu použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních WriteXml okolností metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a celou její následnou tabulku, související tabulky, zavolejte metodu s parametrem writeHierarchy nastaveným na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter, XmlWriteMode)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně i schéma pro DataTable zadaná XmlWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu .

public:
 void WriteXml(System::Xml::XmlWriter ^ writer, System::Data::XmlWriteMode mode);
public void WriteXml (System.Xml.XmlWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml (System.Xml.XmlWriter writer, System.Data.XmlWriteMode mode);
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (writer As XmlWriter, mode As XmlWriteMode)

Parametry

writer
XmlWriter

Slouží XmlWriter k zápisu dokumentu.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. K zápisu dat i schématu použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream, XmlWriteMode, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně schéma pro DataTable do zadaného souboru pomocí zadaného XmlWriteModesouboru . Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu . Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

public:
 void WriteXml(System::IO::Stream ^ stream, System::Data::XmlWriteMode mode, bool writeHierarchy);
public void WriteXml (System.IO.Stream? stream, System.Data.XmlWriteMode mode, bool writeHierarchy);
public void WriteXml (System.IO.Stream stream, System.Data.XmlWriteMode mode, bool writeHierarchy);
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode * bool -> unit
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode, writeHierarchy As Boolean)

Parametry

stream
Stream

Datový proud, do kterého budou zapsána data

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapište data pouze pro aktuální tabulku.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních WriteXml okolností metoda ukládá data pouze pro aktuální tabulku. Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních WriteXml okolností metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a všechny její následné související tabulky, zavolejte metodu s parametrem nastaveným writeHierarchy na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(TextWriter, XmlWriteMode, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně i schéma pro DataTable zadaná TextWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu . Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

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

Parametry

writer
TextWriter

Slouží TextWriter k zápisu dokumentu.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapište data pouze pro aktuální tabulku.

Příklady

Následující konzolová aplikace vytvoří dvě DataTable instance, každou z nich přidá do DataSet, vytvoří DataRelation objekt, který tyto dvě tabulky souvisí, a pak použije metodu WriteXml k zápisu dat obsažených v nadřazené tabulce do TextWriter. Příklad ukazuje chování při nastavení parametru writeHierarchy na každou z jeho hodnot.

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.WriteXml(writer, XmlWriteMode.WriteSchema, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, 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.WriteXml(writer, XmlWriteMode.WriteSchema, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXml(writer, XmlWriteMode.WriteSchema, 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

V příkladu se zobrazí následující výstup v okně konzoly:

==============================
Customer table, without hierarchy
==============================
<NewDataSet>
  <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:choice>
      </xs:complexType>
      <xs:unique name="Constraint1" msdata:PrimaryKey="true">
        <xs:selector xpath=".//Table1" />
        <xs:field xpath="ID" />
      </xs:unique>
    </xs:element>
  </xs:schema>
  <Table1>
    <ID>1</ID>
    <Name>Mary</Name>
  </Table1>
  <Table1>
    <ID>2</ID>
    <Name>Andy</Name>
  </Table1>
  <Table1>
    <ID>3</ID>
    <Name>Peter</Name>
  </Table1>
  <Table1>
    <ID>4</ID>
    <Name>Russ</Name>
  </Table1>
</NewDataSet>
==============================
Customer table, with hierarchy
==============================
<NewDataSet>
  <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" m
sdata: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>
  <Table1>
    <ID>1</ID>
    <Name>Mary</Name>
  </Table1>
  <Table1>
    <ID>2</ID>
    <Name>Andy</Name>
  </Table1>
  <Table1>
    <ID>3</ID>
    <Name>Peter</Name>
  </Table1>
  <Table1>
    <ID>4</ID>
    <Name>Russ</Name>
  </Table1>
  <Table2>
    <OrderID>1</OrderID>
    <CustomerID>1</CustomerID>
    <OrderDate>2003-12-02T00:00:00.0000000-08:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>2</OrderID>
    <CustomerID>1</CustomerID>
    <OrderDate>2004-01-03T00:00:00.0000000-08:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>3</OrderID>
    <CustomerID>2</CustomerID>
    <OrderDate>2004-11-13T00:00:00.0000000-08:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>4</OrderID>
    <CustomerID>3</CustomerID>
    <OrderDate>2004-05-16T00:00:00.0000000-07:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>5</OrderID>
    <CustomerID>3</CustomerID>
    <OrderDate>2004-05-22T00:00:00.0000000-07:00</OrderDate>
  </Table2>
  <Table2>
    <OrderID>6</OrderID>
    <CustomerID>4</CustomerID>
    <OrderDate>2004-06-15T00:00:00.0000000-07:00</OrderDate>
  </Table2>
</NewDataSet>

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních WriteXml okolností metoda ukládá data pouze pro aktuální tabulku. Metoda WriteXml poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z DataTable dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních WriteXml okolností metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a všechny její následné související tabulky, zavolejte metodu s parametrem nastaveným writeHierarchy na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného souboru. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

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

Parametry

fileName
String

Soubor, do kterého se mají zapisovat data XML.

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapište data pouze pro aktuální tabulku.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních okolností WriteXml metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a všechny její potomky související tabulky, zavolejte metodu s parametrem nastaveným writeHierarchy na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného Streamobjektu . Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

public:
 void WriteXml(System::IO::Stream ^ stream, bool writeHierarchy);
public void WriteXml (System.IO.Stream? stream, bool writeHierarchy);
public void WriteXml (System.IO.Stream stream, bool writeHierarchy);
member this.WriteXml : System.IO.Stream * bool -> unit
Public Sub WriteXml (stream As Stream, writeHierarchy As Boolean)

Parametry

stream
Stream

Datový proud, do kterého budou zapsána data

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapisujte data pouze pro aktuální tabulku.

Poznámky

Použijte metodu WriteXmlSchema k zápisu schématu DataTable pro do dokumentu XML. Schéma obsahuje definice tabulky, relace a omezení.

Schéma XML je zapsáno s použitím standardu XSD.

K zápisu dat do dokumentu XML použijte metodu WriteXml .

Za normálních okolností WriteXml metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a všechny její potomky související tabulky, zavolejte metodu s parametrem nastaveným writeHierarchy na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter, XmlWriteMode, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně schéma pro DataTable pomocí zadaných XmlWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

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

Parametry

writer
XmlWriter

Slouží XmlWriter k zápisu dokumentu.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapisujte data pouze pro aktuální tabulku.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr , a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních okolností WriteXml metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a celé její potomky související tabulky, zavolejte metodu s parametrem nastaveným writeHierarchy na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného souboru.

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

Parametry

fileName
String

Soubor, do kterého chcete zapsat data XML.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(TextWriter)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného TextWriterobjektu .

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

Parametry

writer
TextWriter

Hodnota TextWriter , pomocí které chcete zapsat obsah.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah objektu DataTable jako XML pomocí zadaného Streamobjektu .

public:
 void WriteXml(System::IO::Stream ^ stream);
public void WriteXml (System.IO.Stream? stream);
public void WriteXml (System.IO.Stream stream);
member this.WriteXml : System.IO.Stream -> unit
Public Sub WriteXml (stream As Stream)

Parametry

stream
Stream

Datový proud, do kterého budou zapsána data

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String, XmlWriteMode, Boolean)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální data a volitelně schéma pro pomocí DataTable zadaného souboru a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na true.

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

Parametry

fileName
String

Název souboru, do kterého budou data zapsána.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

writeHierarchy
Boolean

Pokud true, zapište obsah aktuální tabulky a všechny její potomky. Pokud false (výchozí hodnota), zapisujte data pouze pro aktuální tabulku.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr , a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních okolností WriteXml metoda ukládá data pouze pro aktuální tabulku. Pokud chcete uložit data pro aktuální tabulku a všechna schémata, WriteXml metoda poskytuje způsob, jak zapisovat buď pouze data, nebo data a schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr , a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Ke čtení dat XML nebo schématu i dat do objektu DataTablepoužijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Za normálních okolností WriteXml metoda zapisuje data pouze pro aktuální tabulku. Pokud chcete zapsat data pro aktuální tabulku a všechny potomky související tabulky, zavolejte metodu s parametrem nastaveným writeHierarchy na true.

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu DataRow , ze kterého se čte nebo do kterého se zapisuje, implementuje IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter)

Zdroj:
DataTable.cs
Zdroj:
DataTable.cs
Zdroj:
DataTable.cs

Zapíše aktuální obsah DataTable souboru jako XML pomocí zadaného XmlWriterobjektu .

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

Parametry

writer
XmlWriter

Objekt XmlWriter , pomocí kterého se má zapisovat obsah.

Poznámky

Metoda WriteXml poskytuje způsob, jak zapisovat buď data pouze, nebo data i schéma z objektu DataTable do dokumentu XML, zatímco WriteXmlSchema metoda zapisuje pouze schéma. Pokud chcete zapsat data i schéma, použijte jedno z přetížení, které obsahuje XmlWriteMode parametr , a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro ReadXml metody a ReadXmlSchema v uvedeném pořadí. Pokud chcete číst data XML nebo schéma i data do objektu DataTable, použijte metodu ReadXml . Pokud chcete přečíst pouze schéma, použijte metodu ReadXmlSchema .

Poznámka

Vyvolá InvalidOperationException se, pokud typ sloupce v objektu, který DataRow se čte z nebo zapisuje IDynamicMetaObjectProvider do implementace, a neimplementuje IXmlSerializable.

Viz také

Platí pro