DataTable.WriteXml メソッド

定義

DataTableの現在の内容を XML として書き込みます。

オーバーロード

名前 説明
WriteXml(TextWriter, Boolean)

指定したTextWriterを使用して、DataTableの現在の内容を XML として書き込みます。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを true に設定します。

WriteXml(TextWriter, XmlWriteMode)

指定したTextWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。

WriteXml(String, XmlWriteMode)

指定したファイルとXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。

WriteXml(Stream, XmlWriteMode)

指定したXmlWriteModeを使用して、指定したファイルにDataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。

WriteXml(XmlWriter, Boolean)

指定したXmlWriterを使用して、DataTableの現在の内容を XML として書き込みます。

WriteXml(XmlWriter, XmlWriteMode)

指定したXmlWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。

WriteXml(Stream, XmlWriteMode, Boolean)

指定したXmlWriteModeを使用して、指定したファイルにDataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを true に設定します。

WriteXml(TextWriter, XmlWriteMode, Boolean)

指定したTextWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを true に設定します。

WriteXml(String, Boolean)

指定したファイルを使用して、 DataTable の現在の内容を XML として書き込みます。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを true に設定します。

WriteXml(Stream, Boolean)

指定したStreamを使用して、DataTableの現在の内容を XML として書き込みます。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを true に設定します。

WriteXml(XmlWriter, XmlWriteMode, Boolean)

指定したXmlWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを true に設定します。

WriteXml(String)

指定したファイルを使用して、 DataTable の現在の内容を XML として書き込みます。

WriteXml(TextWriter)

指定したTextWriterを使用して、DataTableの現在の内容を XML として書き込みます。

WriteXml(Stream)

指定したStreamを使用して、DataTableの現在の内容を XML として書き込みます。

WriteXml(String, XmlWriteMode, Boolean)

指定したファイルとXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを true に設定します。

WriteXml(XmlWriter)

指定したXmlWriterを使用して、DataTableの現在の内容を XML として書き込みます。

次のコンソール アプリケーションは、2 つの DataTable インスタンスを作成し、それぞれを DataSetに追加し、2 つのテーブルに関連する DataRelation を作成した後、 WriteXml メソッドを使用して親テーブルに含まれるデータを TextWriterに書き込みます。 この例では、 writeHierarchy パラメーターを各値に設定するときの動作を示します。

Note

この例では、オーバーロードされたバージョンの WriteXml の 1 つを使用する方法を示します。 使用可能なその他の例については、個々のオーバーロードに関するトピックを参照してください。

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

この例では、コンソール ウィンドウに次の出力が表示されます。

==============================
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 メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

WriteXml(TextWriter, Boolean)

指定したTextWriterを使用して、DataTableの現在の内容を XML として書き込みます。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを 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

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

次のコンソール アプリケーションは、2 つの DataTable インスタンスを作成し、それぞれを DataSetに追加し、2 つのテーブルに関連する DataRelation を作成した後、 WriteXml メソッドを使用して親テーブルに含まれるデータを TextWriterに書き込みます。 この例では、 writeHierarchy パラメーターを 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 メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとそのすべての子孫の関連テーブルのデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(TextWriter, XmlWriteMode)

指定したTextWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を 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

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(String, XmlWriteMode)

指定したファイルとXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を 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

データの書き込み先となるファイルの名前。

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(Stream, XmlWriteMode)

指定したXmlWriteModeを使用して、指定したファイルにDataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を 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
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode)

パラメーター

stream
Stream

データの書き込み先となるストリーム。

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(XmlWriter, Boolean)

指定したXmlWriterを使用して、DataTableの現在の内容を XML として書き込みます。

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

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとその子孫である関連テーブル全体のデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(XmlWriter, XmlWriteMode)

指定したXmlWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を 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

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(Stream, XmlWriteMode, Boolean)

指定したXmlWriteModeを使用して、指定したファイルにDataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを 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
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode, writeHierarchy As Boolean)

パラメーター

stream
Stream

データの書き込み先となるストリーム。

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを保存します。 WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとそのすべての子孫の関連テーブルのデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(TextWriter, XmlWriteMode, Boolean)

指定したTextWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを 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

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

次のコンソール アプリケーションは、2 つの DataTable インスタンスを作成し、それぞれを DataSetに追加し、2 つのテーブルに関連する DataRelation を作成した後、 WriteXml メソッドを使用して親テーブルに含まれるデータを TextWriterに書き込みます。 この例では、 writeHierarchy パラメーターを各値に設定するときの動作を示します。

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

この例では、コンソール ウィンドウに次の出力が表示されます。

==============================
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 メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを保存します。 WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとそのすべての子孫の関連テーブルのデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(String, Boolean)

指定したファイルを使用して、 DataTable の現在の内容を XML として書き込みます。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを 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

XML データの書き込み先となるファイル。

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとそのすべての子孫の関連テーブルのデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(Stream, Boolean)

指定したStreamを使用して、DataTableの現在の内容を XML として書き込みます。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを 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
Public Sub WriteXml (stream As Stream, writeHierarchy As Boolean)

パラメーター

stream
Stream

データの書き込み先となるストリーム。

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

注釈

DataTableのスキーマを XML ドキュメントに書き込むには、WriteXmlSchema メソッドを使用します。 スキーマには、テーブル、リレーションシップ、および制約の定義が含まれます。

XML スキーマは、XSD 標準を使用して記述されます。

XML ドキュメントにデータを書き込むには、 WriteXml メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとそのすべての子孫の関連テーブルのデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(XmlWriter, XmlWriteMode, Boolean)

指定したXmlWriterXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを 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

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとその子孫である関連テーブル全体のデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(String)

指定したファイルを使用して、 DataTable の現在の内容を XML として書き込みます。

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

パラメーター

fileName
String

XML データの書き込み先となるファイル。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(TextWriter)

指定したTextWriterを使用して、DataTableの現在の内容を XML として書き込みます。

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

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(Stream)

指定したStreamを使用して、DataTableの現在の内容を XML として書き込みます。

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

パラメーター

stream
Stream

データの書き込み先となるストリーム。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むオーバーロードのいずれかを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(String, XmlWriteMode, Boolean)

指定したファイルとXmlWriteModeを使用して、DataTableの現在のデータと必要に応じてスキーマを書き込みます。 スキーマを記述するには、 mode パラメーターの値を WriteSchema に設定します。 テーブルとそのすべての子孫のデータを保存するには、 writeHierarchy パラメーターを 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

データの書き込み先となるファイルの名前。

mode
XmlWriteMode

XmlWriteMode値の 1 つ。

writeHierarchy
Boolean

true場合は、現在のテーブルとそのすべての子孫の内容を書き込みます。 false (既定値) の場合は、現在のテーブルのデータのみを書き込みます。

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを保存します。 現在のテーブルとすべてのスキーマのデータを保存する場合、 WriteXml メソッドはデータのみ、またはデータとスキーマの両方を xml ドキュメントに DataTable から書き込む方法を提供しますが、 WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

通常、 WriteXml メソッドは、現在のテーブルのデータのみを書き込みます。 現在のテーブルとすべての子孫の関連テーブルのデータを書き込むには、 writeHierarchy パラメーターを true に設定してメソッドを呼び出します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象

WriteXml(XmlWriter)

指定したXmlWriterを使用して、DataTableの現在の内容を XML として書き込みます。

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

注釈

WriteXml メソッドは、データのみ、またはDataTableのデータとスキーマの両方を XML ドキュメントに書き込む方法を提供しますが、WriteXmlSchema メソッドはスキーマのみを書き込みます。 データとスキーマの両方を書き込むには、 XmlWriteMode パラメーターを含むいずれかのオーバーロードを使用し、その値を WriteSchema に設定します。

ReadXmlメソッドとReadXmlSchemaメソッドについても、それぞれ同じことが当てはまります。 XML データ、またはスキーマとデータの両方を DataTableに読み取る場合は、 ReadXml メソッドを使用します。 スキーマのみを読み取る場合は、 ReadXmlSchema メソッドを使用します。

Note

InvalidOperationExceptionは、IDynamicMetaObjectProviderを実装するために読み取りまたは書き込みを行うDataRow内の列型がIXmlSerializableを実装していない場合にスローされます。

こちらもご覧ください

適用対象