DataTable.WriteXml Metoda

Definice

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

Přetížení

Name Description
WriteXml(TextWriter, Boolean)

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného TextWriter. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

WriteXml(TextWriter, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného TextWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(String, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného souboru a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(Stream, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro DataTable zadaný soubor pomocí zadaného XmlWriteModesouboru . Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(XmlWriter, Boolean)

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného XmlWriter.

WriteXml(XmlWriter, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného XmlWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

WriteXml(Stream, XmlWriteMode, Boolean)

Zapíše aktuální data a volitelně schéma pro DataTable zadaný soubor pomocí zadaného XmlWriteModesouboru . Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

WriteXml(TextWriter, XmlWriteMode, Boolean)

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného TextWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

WriteXml(String, Boolean)

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

WriteXml(Stream, Boolean)

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného Stream. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

WriteXml(XmlWriter, XmlWriteMode, Boolean)

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného XmlWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

WriteXml(String)

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného souboru.

WriteXml(TextWriter)

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného TextWriter.

WriteXml(Stream)

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného Stream.

WriteXml(String, XmlWriteMode, Boolean)

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

WriteXml(XmlWriter)

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného XmlWriter.

Příklady

Následující konzolová aplikace vytvoří dvě DataTable instance, přidá každý do a DataSet, vytvoří DataRelation relaci dvou tabulek 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 jejích hodnot.

Note

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

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 v okně konzoly zobrazí následující výstup:

==============================
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

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

WriteXml(TextWriter, Boolean)

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

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného TextWriter. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

public:
 void WriteXml(System::IO::TextWriter ^ writer, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.TextWriter? writer, bool writeHierarchy);
public void WriteXml(System.IO.TextWriter? writer, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.TextWriter? writer, bool writeHierarchy);
public void WriteXml(System.IO.TextWriter writer, bool writeHierarchy);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.TextWriter * bool -> unit
member this.WriteXml : System.IO.TextWriter * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.TextWriter * bool -> unit
Public Sub WriteXml (writer As TextWriter, writeHierarchy As Boolean)

Parametry

writer
TextWriter

To TextWriter , s jakým obsahem napíšete.

writeHierarchy
Boolean

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

Atributy

Příklady

Následující konzolová aplikace vytvoří dvě DataTable instance, přidá každý do a DataSet, vytvoří DataRelation relaci dvou tabulek 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 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

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

WriteXml Metoda obvykle 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.

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(TextWriter, XmlWriteMode)

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

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného TextWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

public:
 void WriteXml(System::IO::TextWriter ^ writer, System::Data::XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.TextWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml(System.IO.TextWriter? writer, System.Data.XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.TextWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml(System.IO.TextWriter writer, System.Data.XmlWriteMode mode);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode -> unit
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String, XmlWriteMode)

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

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného souboru a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

public:
 void WriteXml(System::String ^ fileName, System::Data::XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName, System.Data.XmlWriteMode mode);
public void WriteXml(string fileName, System.Data.XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName, System.Data.XmlWriteMode mode);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : string * System.Data.XmlWriteMode -> unit
member this.WriteXml : string * System.Data.XmlWriteMode -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream, XmlWriteMode)

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

Zapíše aktuální data a volitelně schéma pro DataTable zadaný soubor pomocí zadaného XmlWriteModesouboru . Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

public:
 void WriteXml(System::IO::Stream ^ stream, System::Data::XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.Stream? stream, System.Data.XmlWriteMode mode);
public void WriteXml(System.IO.Stream? stream, System.Data.XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.Stream? stream, System.Data.XmlWriteMode mode);
public void WriteXml(System.IO.Stream stream, System.Data.XmlWriteMode mode);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode -> unit
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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 data zapsána.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter, Boolean)

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

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného XmlWriter.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.Xml.XmlWriter? writer, bool writeHierarchy);
public void WriteXml(System.Xml.XmlWriter? writer, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.Xml.XmlWriter? writer, bool writeHierarchy);
public void WriteXml(System.Xml.XmlWriter writer, bool writeHierarchy);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.Xml.XmlWriter * bool -> unit
member this.WriteXml : System.Xml.XmlWriter * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.Xml.XmlWriter * bool -> unit
Public Sub WriteXml (writer As XmlWriter, writeHierarchy As Boolean)

Parametry

writer
XmlWriter

Obsah XmlWriter se má napsat.

writeHierarchy
Boolean

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

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

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

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter, XmlWriteMode)

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

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného XmlWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer, System::Data::XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.Xml.XmlWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml(System.Xml.XmlWriter? writer, System.Data.XmlWriteMode mode);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.Xml.XmlWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml(System.Xml.XmlWriter writer, System.Data.XmlWriteMode mode);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode -> unit
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream, XmlWriteMode, Boolean)

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

Zapíše aktuální data a volitelně schéma pro DataTable zadaný soubor pomocí zadaného XmlWriteModesouboru . Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

public:
 void WriteXml(System::IO::Stream ^ stream, System::Data::XmlWriteMode mode, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
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);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode * bool -> unit
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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 data zapsána.

mode
XmlWriteMode

Jedna z XmlWriteMode hodnot.

writeHierarchy
Boolean

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

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

WriteXml Metoda obvykle ukládá data pouze pro aktuální tabulku. Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

WriteXml Metoda obvykle 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.

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(TextWriter, XmlWriteMode, Boolean)

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

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného TextWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

public:
 void WriteXml(System::IO::TextWriter ^ writer, System::Data::XmlWriteMode mode, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
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);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode * bool -> unit
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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 jeho potomky. Pokud false (výchozí hodnota), zapište data pouze pro aktuální tabulku.

Atributy

Příklady

Následující konzolová aplikace vytvoří dvě DataTable instance, přidá každý do a DataSet, vytvoří DataRelation relaci dvou tabulek 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 jejích 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 v okně konzoly zobrazí následující výstup:

==============================
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

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

WriteXml Metoda obvykle ukládá data pouze pro aktuální tabulku. Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

WriteXml Metoda obvykle 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.

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String, Boolean)

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

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

public:
 void WriteXml(System::String ^ fileName, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName, bool writeHierarchy);
public void WriteXml(string fileName, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName, bool writeHierarchy);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : string * bool -> unit
member this.WriteXml : string * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : string * bool -> unit
Public Sub WriteXml (fileName As String, writeHierarchy As Boolean)

Parametry

fileName
String

Soubor, do kterého chcete zapsat data XML.

writeHierarchy
Boolean

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

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

WriteXml Metoda obvykle 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.

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream, Boolean)

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

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného Stream. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

public:
 void WriteXml(System::IO::Stream ^ stream, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.Stream? stream, bool writeHierarchy);
public void WriteXml(System.IO.Stream? stream, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.Stream? stream, bool writeHierarchy);
public void WriteXml(System.IO.Stream stream, bool writeHierarchy);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.Stream * bool -> unit
member this.WriteXml : System.IO.Stream * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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 data zapsána.

writeHierarchy
Boolean

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

Atributy

Poznámky

WriteXmlSchema Metoda slouží k zápisu schématu DataTable do dokumentu XML. Schéma obsahuje definice tabulek, relací a omezení.

Schéma XML je zapsáno pomocí standardu XSD.

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

WriteXml Metoda obvykle 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.

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter, XmlWriteMode, Boolean)

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

Zapíše aktuální data a volitelně schéma pro DataTable použití zadaného XmlWriter a XmlWriteMode. Chcete-li napsat schéma, nastavte hodnotu parametru mode na WriteSchema. Pokud chcete uložit data pro tabulku a všechny její potomky, nastavte writeHierarchy parametr na truehodnotu .

public:
 void WriteXml(System::Xml::XmlWriter ^ writer, System::Data::XmlWriteMode mode, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
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);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
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);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode * bool -> unit
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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 jeho potomky. Pokud false (výchozí hodnota), zapište data pouze pro aktuální tabulku.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

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

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String)

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

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného souboru.

public:
 void WriteXml(System::String ^ fileName);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName);
public void WriteXml(string fileName);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : string -> unit
member this.WriteXml : string -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : string -> unit
Public Sub WriteXml (fileName As String)

Parametry

fileName
String

Soubor, do kterého chcete zapsat data XML.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(TextWriter)

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

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného TextWriter.

public:
 void WriteXml(System::IO::TextWriter ^ writer);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.TextWriter? writer);
public void WriteXml(System.IO.TextWriter? writer);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.TextWriter? writer);
public void WriteXml(System.IO.TextWriter writer);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.TextWriter -> unit
member this.WriteXml : System.IO.TextWriter -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.TextWriter -> unit
Public Sub WriteXml (writer As TextWriter)

Parametry

writer
TextWriter

To TextWriter , s jakým obsahem napíšete.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(Stream)

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

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného Stream.

public:
 void WriteXml(System::IO::Stream ^ stream);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.Stream? stream);
public void WriteXml(System.IO.Stream? stream);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.IO.Stream? stream);
public void WriteXml(System.IO.Stream stream);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.Stream -> unit
member this.WriteXml : System.IO.Stream -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.IO.Stream -> unit
Public Sub WriteXml (stream As Stream)

Parametry

stream
Stream

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

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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é zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(String, XmlWriteMode, Boolean)

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

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

public:
 void WriteXml(System::String ^ fileName, System::Data::XmlWriteMode mode, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName, System.Data.XmlWriteMode mode, bool writeHierarchy);
public void WriteXml(string fileName, System.Data.XmlWriteMode mode, bool writeHierarchy);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(string fileName, System.Data.XmlWriteMode mode, bool writeHierarchy);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : string * System.Data.XmlWriteMode * bool -> unit
member this.WriteXml : string * System.Data.XmlWriteMode * bool -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
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 jeho potomky. Pokud false (výchozí hodnota), zapište data pouze pro aktuální tabulku.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

WriteXml Metoda obvykle 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 pouze data, nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

WriteXml Metoda obvykle 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.

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro

WriteXml(XmlWriter)

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

Zapíše aktuální obsah DataTable ve formátu XML pomocí zadaného XmlWriter.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")]
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.Xml.XmlWriter? writer);
public void WriteXml(System.Xml.XmlWriter? writer);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")]
public void WriteXml(System.Xml.XmlWriter? writer);
public void WriteXml(System.Xml.XmlWriter writer);
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Members from serialized types may use dynamic code generation.")>]
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.Xml.XmlWriter -> unit
member this.WriteXml : System.Xml.XmlWriter -> unit
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Members from serialized types may be trimmed if not referenced directly.")>]
member this.WriteXml : System.Xml.XmlWriter -> unit
Public Sub WriteXml (writer As XmlWriter)

Parametry

writer
XmlWriter

Obsah XmlWriter se má napsat.

Atributy

Poznámky

Tato WriteXml metoda poskytuje způsob, jak zapsat pouze data nebo data i 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á zahrnuje XmlWriteMode parametr, a nastavte jeho hodnotu na WriteSchema.

Všimněte si, že totéž platí pro metody ReadXml a ReadXmlSchema metody. Ke čtení dat XML, nebo schématu i dat do této DataTableReadXml metody. Ke čtení pouze schématu použijte metodu ReadXmlSchema .

Note

Bude InvalidOperationException vyvolána, pokud typ sloupce, který DataRow se čte z nebo zapisuje do implementace IDynamicMetaObjectProvider a neimplementuje IXmlSerializable.

Viz také

Platí pro