DataTable.WriteXml DataTable.WriteXml DataTable.WriteXml DataTable.WriteXml Method

정의

DataTable의 현재 내용을 XML로 씁니다.Writes the current contents of the DataTable as XML.

오버로드

WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean)

지정된 TextWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified TextWriter. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode)

지정된 DataTableTextWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode)

지정된 파일과 DataTable를 사용하여 XmlWriteMode에 대해 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode)

지정된 DataTable를 사용하여 지정된 파일에 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean)

지정된 XmlWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified XmlWriter.

WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode)

지정된 DataTableXmlWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean)

지정된 DataTable를 사용하여 지정된 파일에 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean)

지정된 DataTableTextWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean)

지정된 파일을 사용하여 DataTable의 현재 내용을 XML로 씁니다.Writes the current contents of the DataTable as XML using the specified file. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(Stream, Boolean) WriteXml(Stream, Boolean) WriteXml(Stream, Boolean)

지정된 Stream를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified Stream. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean)

지정된 DataTableXmlWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String) WriteXml(String) WriteXml(String) WriteXml(String)

지정된 파일을 사용하여 DataTable의 현재 내용을 XML로 씁니다.Writes the current contents of the DataTable as XML using the specified file.

WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter)

지정된 TextWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified TextWriter.

WriteXml(Stream) WriteXml(Stream) WriteXml(Stream)

지정된 Stream를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified Stream.

WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean)

지정된 파일과 DataTable를 사용하여 XmlWriteMode에 대해 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter)

지정된 XmlWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified XmlWriter.

예제

다음 콘솔 응용 프로그램 두 개를 만듭니다 DataTable 인스턴스, 각 추가 DataSet를 만듭니다를 DataRelation 두 관련 테이블을 선택한 다음 사용 하 여는 WriteXml 는부모테이블내에포함된데이터를쓸메서드TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXml method to write the data contained within the parent table to a TextWriter. 이 예제에서는 설정 하는 경우 동작을 보여 줍니다는 writeHierarchy 매개 변수를 각각의 값입니다.The example demonstrates the behavior when setting the writeHierarchy parameter to each of its values.

참고

이 예제에서는 WriteXml의 오버 로드 된 버전 중 하나를 사용 하는 방법을 보여 줍니다.This example shows how to use one of the overloaded versions of WriteXml. 사용할 수 있는 다른 예제를 오버 로드 개별 항목을 참조 하십시오.For other examples that might be available, see the individual overload topics.

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

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

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.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

이 예제에서는 콘솔 창에 다음 출력을 표시합니다.The example displays the following output in the console window:

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

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean)

지정된 TextWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified TextWriter. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

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)

매개 변수

writer
TextWriter TextWriter TextWriter TextWriter

콘텐츠를 쓰는 데 사용할 TextWriter입니다.The TextWriter with which to write the content.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

예제

다음 콘솔 응용 프로그램 두 개를 만듭니다 DataTable 인스턴스, 각 추가 DataSet를 만듭니다를 DataRelation 두 관련 테이블을 선택한 다음 사용 하 여는 WriteXml 는부모테이블내에포함된데이터를쓸메서드TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXml method to write the data contained within the parent table to a TextWriter. 이 예제에서는 설정 하는 경우 동작을 보여 줍니다 합니다 writeHierarchy 매개 변수를 true입니다.The example demonstrates the behavior when setting the writeHierarchy parameter to 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

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 현재 테이블과 모든 하위 항목, 관련 테이블에 대 한 데이터를 작성 하려면 메서드를 호출 합니다 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and all its descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode)

지정된 DataTableTextWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

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)

매개 변수

writer
TextWriter TextWriter TextWriter TextWriter

문서를 쓰는 데 사용되는 TextWriter입니다.The TextWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode)

지정된 파일과 DataTable를 사용하여 XmlWriteMode에 대해 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

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)

매개 변수

fileName
String String String String

데이터가 기록될 파일의 이름입니다.The name of the file to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode)

지정된 DataTable를 사용하여 지정된 파일에 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

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

매개 변수

stream
Stream Stream Stream Stream

데이터가 기록될 스트림입니다.The stream to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean)

지정된 XmlWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified XmlWriter.

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)

매개 변수

writer
XmlWriter XmlWriter XmlWriter XmlWriter

내용을 기록하는 데 사용할 XmlWriter입니다.The XmlWriter with which to write the contents.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 현재 테이블 및 해당 하위 항목, 관련 테이블을 전체 데이터를 작성 하려면 메서드를 호출 합니다 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode)

지정된 DataTableXmlWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema.

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)

매개 변수

writer
XmlWriter XmlWriter XmlWriter XmlWriter

문서를 쓰는 데 사용되는 XmlWriter입니다.The XmlWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean)

지정된 DataTable를 사용하여 지정된 파일에 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to 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);
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode * bool -> unit

매개 변수

stream
Stream Stream Stream Stream

데이터가 기록될 스트림입니다.The stream to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에 대 한 데이터만 저장 합니다.Normally, the WriteXml method saves data only for the current table. 합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 관련 테이블이 현재 테이블과 모든 하위 항목에 대 한 데이터를 쓰는 데 사용 하 여 메서드를 호출 합니다는 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean)

지정된 DataTableTextWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to 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);
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode * bool -> unit
Public Sub WriteXml (writer As TextWriter, mode As XmlWriteMode, writeHierarchy As Boolean)

매개 변수

writer
TextWriter TextWriter TextWriter TextWriter

문서를 쓰는 데 사용되는 TextWriter입니다.The TextWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

예제

다음 콘솔 응용 프로그램 두 개를 만듭니다 DataTable 인스턴스, 각 추가 DataSet를 만듭니다를 DataRelation 두 관련 테이블을 선택한 다음 사용 하 여는 WriteXml 는부모테이블내에포함된데이터를쓸메서드TextWriter.The following console application creates two DataTable instances, adds each to a DataSet, creates a DataRelation relating the two tables, and then uses the WriteXml method to write the data contained within the parent table to a TextWriter. 이 예제에서는 설정 하는 경우 동작을 보여 줍니다는 writeHierarchy 매개 변수를 각각의 값입니다.The example demonstrates the behavior when setting the writeHierarchy parameter to each of its values.

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

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

    System.IO.StringWriter writer = new System.IO.StringWriter();
    customerTable.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

이 예제에서는 콘솔 창에 다음 출력을 표시합니다.The example displays the following output in the console window:

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

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에 대 한 데이터만 저장 합니다.Normally, the WriteXml method saves data only for the current table. 합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 관련 테이블이 현재 테이블과 모든 하위 항목에 대 한 데이터를 쓰는 데 사용 하 여 메서드를 호출 합니다는 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean)

지정된 파일을 사용하여 DataTable의 현재 내용을 XML로 씁니다.Writes the current contents of the DataTable as XML using the specified file. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to 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)

매개 변수

fileName
String String String String

XML 데이터를 기록할 파일입니다.The file to which to write the XML data.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 관련 테이블이 현재 테이블과 모든 하위 항목에 대 한 데이터를 쓰는 데 사용 하 여 메서드를 호출 합니다는 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(Stream, Boolean) WriteXml(Stream, Boolean) WriteXml(Stream, Boolean)

지정된 Stream를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified Stream. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

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

매개 변수

stream
Stream Stream Stream Stream

데이터가 기록될 스트림입니다.The stream to which the data will be written.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

설명

사용 합니다 WriteXmlSchema 에 대 한 스키마를 작성 하는 메서드를 DataTable XML 문서에 합니다.Use the WriteXmlSchema method to write the schema for a DataTable to an XML document. 스키마는 테이블, 관계 및 제약 조건 정의가 포함 되어 있습니다.The schema includes table, relation, and constraint definitions.

XML 스키마는 XSD 표준을 사용 하 여 기록 됩니다.The XML schema is written using the XSD standard.

XML 문서에 데이터 쓰기를 사용 하 여를 WriteXml 메서드.To write the data to an XML document, use the WriteXml method.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 관련 테이블이 현재 테이블과 모든 하위 항목에 대 한 데이터를 쓰는 데 사용 하 여 메서드를 호출 합니다는 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and all of its descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean)

지정된 DataTableXmlWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to 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);
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode * bool -> unit
Public Sub WriteXml (writer As XmlWriter, mode As XmlWriteMode, writeHierarchy As Boolean)

매개 변수

writer
XmlWriter XmlWriter XmlWriter XmlWriter

문서를 쓰는 데 사용되는 XmlWriter입니다.The XmlWriter used to write the document.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 현재 테이블 및 해당 하위 항목, 관련 테이블을 전체 데이터를 작성 하려면 메서드를 호출 합니다 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and its entire descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(String) WriteXml(String) WriteXml(String) WriteXml(String)

지정된 파일을 사용하여 DataTable의 현재 내용을 XML로 씁니다.Writes the current contents of the DataTable as XML using the specified file.

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

매개 변수

fileName
String String String String

XML 데이터를 기록할 파일입니다.The file to which to write the XML data.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter)

지정된 TextWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified TextWriter.

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)

매개 변수

writer
TextWriter TextWriter TextWriter TextWriter

콘텐츠를 쓰는 데 사용할 TextWriter입니다.The TextWriter with which to write the content.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(Stream) WriteXml(Stream) WriteXml(Stream)

지정된 Stream를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified Stream.

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

매개 변수

stream
Stream Stream Stream Stream

데이터가 기록될 스트림입니다.The stream to which the data will be written.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that includes the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean)

지정된 파일과 DataTable를 사용하여 XmlWriteMode에 대해 현재 데이터를 쓰고 선택적으로 스키마를 씁니다.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.To write the schema, set the value for the mode parameter to WriteSchema. 테이블과 모든 하위 항목의 데이터를 저장하려면 writeHierarchy 매개 변수를 true로 설정합니다.To save the data for the table and all its descendants, set the writeHierarchy parameter to 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)

매개 변수

fileName
String String String String

데이터가 기록될 파일의 이름입니다.The name of the file to which the data will be written.

mode
XmlWriteMode XmlWriteMode XmlWriteMode XmlWriteMode

XmlWriteMode 값 중 하나입니다.One of the XmlWriteMode values.

writeHierarchy
Boolean Boolean Boolean Boolean

true이면 현재 테이블과 모든 하위 항목의 내용을 씁니다.If true, write the contents of the current table and all its descendants. false(기본값)이면 현재 테이블의 데이터만 씁니다.If false (the default value), write the data for the current table only.

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에 대 한 데이터만 저장 합니다.Normally, the WriteXml method saves data only for the current table. 현재 테이블 및 스키마의 모든 데이터를 저장 하려는 경우는 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.If you want to save the data for the current table and all of schema, the WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

일반적으로 WriteXml 메서드는 현재 테이블에만 데이터를 씁니다.Normally the WriteXml method writes the data only for the current table. 에 현재 테이블과 모든 하위 항목, 관련 테이블에 대 한 데이터 쓰기를 사용 하 여 메서드를 호출 합니다 writeHierarchy 매개 변수 설정 true합니다.To write the data for the current table and all descendant, related tables, call the method with the writeHierarchy parameter set to true.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter)

지정된 XmlWriter를 사용하여 DataTable의 현재 콘텐츠를 XML로 작성합니다.Writes the current contents of the DataTable as XML using the specified XmlWriter.

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)

매개 변수

writer
XmlWriter XmlWriter XmlWriter XmlWriter

내용을 기록하는 데 사용할 XmlWriter입니다.The XmlWriter with which to write the contents.

구현

설명

합니다 WriteXml 메서드 제공 데이터와 스키마를 모두만 데이터를 작성 하는 방법을 DataTable XML 문서로 반면는 WriteXmlSchema 메서드는 스키마만 씁니다.The WriteXml method provides a way to write either data only, or both data and schema from a DataTable into an XML document, whereas the WriteXmlSchema method writes only the schema. 데이터와 스키마를 작성 하려면 포함 하는 오버 로드 중 하나를 사용 합니다 XmlWriteMode 매개 변수를 해당 값을 설정 하 고 WriteSchema입니다.To write both data and schema, use one of the overloads that include the XmlWriteMode parameter, and set its value to WriteSchema.

True는 동일 합니다 ReadXmlReadXmlSchema 메서드를 각각.Note that the same is true for the ReadXml and ReadXmlSchema methods, respectively. XML 데이터 또는 스키마와 데이터를 읽을 수는 DataTable를 사용 하 여를 ReadXml 메서드.To read XML data, or both schema and data into the DataTable, use the ReadXml method. 스키마만을 읽으려면 사용 된 ReadXmlSchema 메서드.To read just the schema, use the ReadXmlSchema method.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.An InvalidOperationException will be thrown if a column type in the DataRow being read from or written to implements IDynamicMetaObjectProvider and does not implement IXmlSerializable.

추가 정보

적용 대상