DataTable.ReadXml Metode

Definisi

Membaca skema XML dan data ke DataTabledalam .

Overload

ReadXml(Stream)

Membaca skema XML dan data ke DataTable dalam menggunakan yang ditentukan Stream.

ReadXml(TextReader)

Membaca skema XML dan data ke DataTable dalam menggunakan yang ditentukan TextReader.

ReadXml(String)

Membaca skema XML dan data ke DataTable dalam dari file yang ditentukan.

ReadXml(XmlReader)

Membaca Skema xml dan Data ke DataTable dalam menggunakan yang ditentukan XmlReader.

Keterangan

Metode ini ReadXml menyediakan cara untuk membaca data saja, atau data dan skema ke dalam DataTable dari dokumen XML, sedangkan ReadXmlSchema metode hanya membaca skema. Untuk membaca data dan skema, gunakan salah ReadXML satu kelebihan beban yang menyertakan XmlReadMode parameter , dan atur nilainya ke ReadSchema.

Perhatikan bahwa hal yang sama berlaku untuk WriteXml metode dan WriteXmlSchema , masing-masing. Untuk menulis data XML, atau skema dan data dari DataTable, gunakan WriteXml metode . Untuk menulis hanya skema, gunakan WriteXmlSchema metode .

Catatan

InvalidOperationException Akan dilemparkan jika jenis kolom dalam DataRow yang dibaca dari atau ditulis ke mengimplementasikan IDynamicMetaObjectProvider dan tidak mengimplementasikan IXmlSerializable.

ReadXml(Stream)

Sumber:
DataTable.cs
Sumber:
DataTable.cs
Sumber:
DataTable.cs

Membaca skema XML dan data ke DataTable dalam menggunakan yang ditentukan Stream.

public:
 System::Data::XmlReadMode ReadXml(System::IO::Stream ^ stream);
public System.Data.XmlReadMode ReadXml (System.IO.Stream? stream);
public System.Data.XmlReadMode ReadXml (System.IO.Stream stream);
member this.ReadXml : System.IO.Stream -> System.Data.XmlReadMode
Public Function ReadXml (stream As Stream) As XmlReadMode

Parameter

stream
Stream

Objek yang berasal dari Stream.

Mengembalikan

yang XmlReadMode digunakan untuk membaca data.

Contoh

Contoh berikut membuat yang DataTable berisi dua kolom dan sepuluh baris. Contoh menulis DataTable skema dan data ke aliran memori, dengan memanggil WriteXml metode . Contoh membuat detik DataTable dan memanggil ReadXml metode untuk mengisinya dengan skema dan data.

private static void DemonstrateReadWriteXMLDocumentWithStream()
{
    DataTable table = CreateTestTable("XmlDemo");
    PrintValues(table, "Original table");

    // Write the schema and data to XML in a memory stream.
    System.IO.MemoryStream xmlStream = new System.IO.MemoryStream();
    table.WriteXml(xmlStream, XmlWriteMode.WriteSchema);

    // Rewind the memory stream.
    xmlStream.Position = 0;

    DataTable newTable = new DataTable();
    newTable.ReadXml(xmlStream);

    // Print out values in the table.
    PrintValues(newTable, "New table");
}

private static DataTable CreateTestTable(string tableName)
{
    // Create a test DataTable with two columns and a few rows.
    DataTable table = new DataTable(tableName);
    DataColumn column = new DataColumn("id", typeof(System.Int32));
    column.AutoIncrement = true;
    table.Columns.Add(column);

    column = new DataColumn("item", typeof(System.String));
    table.Columns.Add(column);

    // Add ten rows.
    DataRow row;
    for (int i = 0; i <= 9; i++)
    {
        row = table.NewRow();
        row["item"] = "item " + i;
        table.Rows.Add(row);
    }

    table.AcceptChanges();
    return table;
}

private static void PrintValues(DataTable table, string label)
{
    // Display the contents of the supplied DataTable:
    Console.WriteLine(label);
    foreach (DataRow row in table.Rows)
    {
        foreach (DataColumn column in table.Columns)
        {
            Console.Write("\t{0}", row[column]);
        }
        Console.WriteLine();
    }
}
Private Sub DemonstrateReadWriteXMLDocumentWithStream()
  Dim table As DataTable = CreateTestTable("XmlDemo")
  PrintValues(table, "Original table")

  ' Write the schema and data to XML in a memory stream.
  Dim xmlStream As New System.IO.MemoryStream()
  table.WriteXml(xmlStream, XmlWriteMode.WriteSchema)

  ' Rewind the memory stream.
  xmlStream.Position = 0

  Dim newTable As New DataTable
  newTable.ReadXml(xmlStream)

  ' Print out values in the table.
  PrintValues(newTable, "New Table")
End Sub

Private Function CreateTestTable(ByVal tableName As String) As DataTable
  ' Create a test DataTable with two columns and a few rows.
  Dim table As New DataTable(tableName)
  Dim column As New DataColumn("id", GetType(System.Int32))
  column.AutoIncrement = True
  table.Columns.Add(column)

  column = New DataColumn("item", GetType(System.String))
  table.Columns.Add(column)

  ' Add ten rows.
  Dim row As DataRow
  For i As Integer = 0 To 9
    row = table.NewRow()
    row("item") = "item " & i
    table.Rows.Add(row)
  Next i

  table.AcceptChanges()
  Return table
End Function

Private Sub PrintValues(ByVal table As DataTable, ByVal label As String)
  ' Display the contents of the supplied DataTable:
  Console.WriteLine(label)
  For Each row As DataRow In table.Rows
    For Each column As DataColumn In table.Columns
      Console.Write("{0}{1}", ControlChars.Tab, row(column))
    Next column
    Console.WriteLine()
  Next row
End Sub

Keterangan

Saat ini DataTable dan keturunannya dimuat dengan data dari yang disediakan Stream. Perilaku metode ini identik dengan DataSet.ReadXml metode , kecuali bahwa dalam hal ini, data hanya dimuat untuk tabel saat ini dan keturunannya.

Metode ini ReadXml menyediakan cara untuk membaca data saja, atau data dan skema ke dalam DataTable dari dokumen XML, sedangkan ReadXmlSchema metode hanya membaca skema.

Perhatikan bahwa hal yang sama berlaku untuk WriteXml metode dan WriteXmlSchema , masing-masing. Untuk menulis data XML, atau skema dan data dari DataTable, gunakan WriteXml metode . Untuk menulis hanya skema, gunakan WriteXmlSchema metode .

Catatan

InvalidOperationException Akan dilemparkan jika jenis kolom dalam DataRow yang dibaca dari atau ditulis ke mengimplementasikan IDynamicMetaObjectProvider dan tidak mengimplementasikan IXmlSerializable.

Jika skema in-line ditentukan, skema in-line digunakan untuk memperluas struktur relasional yang ada sebelum memuat data. Jika ada konflik (misalnya, kolom yang sama dalam tabel yang sama yang ditentukan dengan jenis data yang berbeda) pengecualian akan dimunculkan.

Jika tidak ada skema in-line yang ditentukan, struktur relasional diperluas melalui inferensi, seperlunya, sesuai dengan struktur dokumen XML. Jika skema tidak dapat diperluas melalui inferensi untuk mengekspos semua data, pengecualian akan dimunculkan.

Catatan

DataSet tidak mengaitkan elemen XML dengan yang sesuai DataColumn atau DataTable ketika karakter XML hukum seperti ("_") diloloskan dalam XML serial. Itu DataSet sendiri hanya lolos dari karakter XML ilegal dalam nama elemen XML dan karenanya hanya dapat menggunakan yang sama. Ketika karakter hukum dalam nama elemen XML lolos, elemen diabaikan saat memproses.

Lihat juga

Berlaku untuk

ReadXml(TextReader)

Sumber:
DataTable.cs
Sumber:
DataTable.cs
Sumber:
DataTable.cs

Membaca skema XML dan data ke DataTable dalam menggunakan yang ditentukan TextReader.

public:
 System::Data::XmlReadMode ReadXml(System::IO::TextReader ^ reader);
public System.Data.XmlReadMode ReadXml (System.IO.TextReader? reader);
public System.Data.XmlReadMode ReadXml (System.IO.TextReader reader);
member this.ReadXml : System.IO.TextReader -> System.Data.XmlReadMode
Public Function ReadXml (reader As TextReader) As XmlReadMode

Parameter

reader
TextReader

TextReader yang akan digunakan untuk membaca data.

Mengembalikan

yang XmlReadMode digunakan untuk membaca data.

Contoh

Contoh berikut membuat yang DataTable berisi dua kolom dan sepuluh baris. Contoh menulis DataTable skema dan data ke aliran memori, dengan memanggil WriteXml metode . Contoh membuat detik DataTable dan memanggil ReadXml metode untuk mengisinya dengan skema dan data.

private static void DemonstrateReadWriteXMLDocumentWithReader()
{
    DataTable table = CreateTestTable("XmlDemo");
    PrintValues(table, "Original table");

    // Write the schema and data to XML in a memory stream.
    System.IO.MemoryStream xmlStream = new System.IO.MemoryStream();
    table.WriteXml(xmlStream, XmlWriteMode.WriteSchema);

    // Rewind the memory stream.
    xmlStream.Position = 0;

    System.IO.StreamReader reader =
        new System.IO.StreamReader(xmlStream);
    DataTable newTable = new DataTable();
    newTable.ReadXml(reader);

    // Print out values in the table.
    PrintValues(newTable, "New table");
}

private static DataTable CreateTestTable(string tableName)
{
    // Create a test DataTable with two columns and a few rows.
    DataTable table = new DataTable(tableName);
    DataColumn column = new DataColumn("id", typeof(System.Int32));
    column.AutoIncrement = true;
    table.Columns.Add(column);

    column = new DataColumn("item", typeof(System.String));
    table.Columns.Add(column);

    // Add ten rows.
    DataRow row;
    for (int i = 0; i <= 9; i++)
    {
        row = table.NewRow();
        row["item"] = "item " + i;
        table.Rows.Add(row);
    }

    table.AcceptChanges();
    return table;
}

private static void PrintValues(DataTable table, string label)
{
    Console.WriteLine(label);
    foreach (DataRow row in table.Rows)
    {
        foreach (DataColumn column in table.Columns)
        {
            Console.Write("\t{0}", row[column]);
        }
        Console.WriteLine();
    }
}
Private Sub DemonstrateReadWriteXMLDocumentWithReader()
  Dim table As DataTable = CreateTestTable("XmlDemo")
  PrintValues(table, "Original table")

  ' Write the schema and data to XML in a memory stream.
  Dim xmlStream As New System.IO.MemoryStream()
  table.WriteXml(xmlStream, XmlWriteMode.WriteSchema)

  ' Rewind the memory stream.
  xmlStream.Position = 0

  Dim reader As New System.IO.StreamReader(xmlStream)
  Dim newTable As New DataTable
  newTable.ReadXml(reader)

  ' Print out values in the table.
  PrintValues(newTable, "New Table")
End Sub

Private Function CreateTestTable(ByVal tableName As String) _
  As DataTable
  ' Create a test DataTable with two columns and a few rows.
  Dim table As New DataTable(tableName)
  Dim column As New DataColumn("id", GetType(System.Int32))
  column.AutoIncrement = True
  table.Columns.Add(column)

  column = New DataColumn("item", GetType(System.String))
  table.Columns.Add(column)

  ' Add ten rows.
  Dim row As DataRow
  For i As Integer = 0 To 9
    row = table.NewRow()
    row("item") = "item " & i
    table.Rows.Add(row)
  Next i

  table.AcceptChanges()
  Return table
End Function

Private Sub PrintValues(ByVal table As DataTable, _
  ByVal label As String)
  Console.WriteLine(label)
  For Each row As DataRow In table.Rows
    For Each column As DataColumn In table.Columns
      Console.Write("{0}{1}", ControlChars.Tab, row(column))
    Next column
    Console.WriteLine()
  Next row
End Sub

Keterangan

Saat ini DataTable dan keturunannya dimuat dengan data dari yang disediakan TextReader. Perilaku metode ini identik dengan DataSet.ReadXml metode , kecuali bahwa dalam hal ini, data hanya dimuat untuk tabel saat ini dan keturunannya.

Metode ini ReadXml menyediakan cara untuk membaca data saja, atau data dan skema ke dalam DataTable dari dokumen XML, sedangkan ReadXmlSchema metode hanya membaca skema.

Perhatikan bahwa hal yang sama berlaku untuk WriteXml metode dan WriteXmlSchema , masing-masing. Untuk menulis data XML, atau skema dan data dari DataTable, gunakan WriteXml metode . Untuk menulis hanya skema, gunakan WriteXmlSchema metode .

Catatan

InvalidOperationException Akan dilemparkan jika jenis kolom dalam DataRow yang dibaca dari atau ditulis ke mengimplementasikan IDynamicMetaObjectProvider dan tidak mengimplementasikan IXmlSerializable.

Jika skema in-line ditentukan, skema in-line digunakan untuk memperluas struktur relasional yang ada sebelum memuat data. Jika ada konflik (misalnya, kolom yang sama dalam tabel yang sama yang ditentukan dengan jenis data yang berbeda) pengecualian akan dimunculkan.

Jika tidak ada skema in-line yang ditentukan, struktur relasional diperluas melalui inferensi, seperlunya, sesuai dengan struktur dokumen XML. Jika skema tidak dapat diperluas melalui inferensi untuk mengekspos semua data, pengecualian akan dimunculkan.

Catatan

DataSet tidak mengaitkan elemen XML dengan yang sesuai DataColumn atau DataTable ketika karakter XML hukum seperti ("_") diloloskan dalam XML serial. Itu DataSet sendiri hanya lolos dari karakter XML ilegal dalam nama elemen XML dan karenanya hanya dapat menggunakan yang sama. Ketika karakter hukum dalam nama elemen XML lolos, elemen diabaikan saat memproses.

Lihat juga

Berlaku untuk

ReadXml(String)

Sumber:
DataTable.cs
Sumber:
DataTable.cs
Sumber:
DataTable.cs

Membaca skema XML dan data ke DataTable dalam dari file yang ditentukan.

public:
 System::Data::XmlReadMode ReadXml(System::String ^ fileName);
public System.Data.XmlReadMode ReadXml (string fileName);
member this.ReadXml : string -> System.Data.XmlReadMode
Public Function ReadXml (fileName As String) As XmlReadMode

Parameter

fileName
String

Nama file untuk membaca data.

Mengembalikan

yang XmlReadMode digunakan untuk membaca data.

Contoh

Contoh berikut membuat yang DataTable berisi dua kolom dan sepuluh baris. Contoh menulis DataTable skema dan data ke disk. Contoh membuat detik DataTable dan memanggil ReadXml metode untuk mengisinya dengan skema dan data.

private static void DemonstrateReadWriteXMLDocumentWithString()
{
    DataTable table = CreateTestTable("XmlDemo");
    PrintValues(table, "Original table");

    string fileName = "C:\\TestData.xml";
    table.WriteXml(fileName, XmlWriteMode.WriteSchema);

    DataTable newTable = new DataTable();
    newTable.ReadXml(fileName);

    // Print out values in the table.
    PrintValues(newTable, "New table");
}

private static DataTable CreateTestTable(string tableName)
{
    // Create a test DataTable with two columns and a few rows.
    DataTable table = new DataTable(tableName);
    DataColumn column = new DataColumn("id", typeof(System.Int32));
    column.AutoIncrement = true;
    table.Columns.Add(column);

    column = new DataColumn("item", typeof(System.String));
    table.Columns.Add(column);

    // Add ten rows.
    DataRow row;
    for (int i = 0; i <= 9; i++)
    {
        row = table.NewRow();
        row["item"] = "item " + i;
        table.Rows.Add(row);
    }

    table.AcceptChanges();
    return table;
}

private static void PrintValues(DataTable table, string label)
{
    Console.WriteLine(label);
    foreach (DataRow row in table.Rows)
    {
        foreach (DataColumn column in table.Columns)
        {
            Console.Write("\t{0}", row[column]);
        }
        Console.WriteLine();
    }
}
Private Sub DemonstrateReadWriteXMLDocumentWithString()
  Dim table As DataTable = CreateTestTable("XmlDemo")
  PrintValues(table, "Original table")

  ' Write the schema and data to XML in a file.
  Dim fileName As String = "C:\TestData.xml"
  table.WriteXml(fileName, XmlWriteMode.WriteSchema)

  Dim newTable As New DataTable
  newTable.ReadXml(fileName)

  ' Print out values in the table.
  PrintValues(newTable, "New Table")
End Sub

Private Function CreateTestTable(ByVal tableName As String) _
  As DataTable

  ' Create a test DataTable with two columns and a few rows.
  Dim table As New DataTable(tableName)
  Dim column As New DataColumn("id", GetType(System.Int32))
  column.AutoIncrement = True
  table.Columns.Add(column)

  column = New DataColumn("item", GetType(System.String))
  table.Columns.Add(column)

  ' Add ten rows.
  Dim row As DataRow
  For i As Integer = 0 To 9
    row = table.NewRow()
    row("item") = "item " & i
    table.Rows.Add(row)
  Next i

  table.AcceptChanges()
  Return table
End Function

Private Sub PrintValues(ByVal table As DataTable, _
  ByVal label As String)
  Console.WriteLine(label)
  For Each row As DataRow In table.Rows
    For Each column As DataColumn In table.Columns
      Console.Write("{0}{1}", ControlChars.Tab, row(column))
    Next column
    Console.WriteLine()
  Next row
End Sub

Keterangan

Saat ini DataTable dan keturunannya dimuat dengan data dari file bernama dalam yang disediakan String. Perilaku metode ini identik dengan DataSet.ReadXml metode , kecuali bahwa dalam hal ini, data hanya dimuat untuk tabel saat ini dan keturunannya.

Metode ini ReadXml menyediakan cara untuk membaca data saja, atau data dan skema ke dalam DataTable dari dokumen XML, sedangkan ReadXmlSchema metode hanya membaca skema.

Perhatikan bahwa hal yang sama berlaku untuk WriteXml metode dan WriteXmlSchema , masing-masing. Untuk menulis data XML, atau skema dan data dari DataTable, gunakan WriteXml metode . Untuk menulis hanya skema, gunakan WriteXmlSchema metode .

Catatan

InvalidOperationException Akan dilemparkan jika jenis kolom dalam DataRow yang dibaca dari atau ditulis ke mengimplementasikan IDynamicMetaObjectProvider dan tidak mengimplementasikan IXmlSerializable.

Jika skema in-line ditentukan, skema in-line digunakan untuk memperluas struktur relasional yang ada sebelum memuat data. Jika ada konflik (misalnya, kolom yang sama dalam tabel yang sama yang ditentukan dengan jenis data yang berbeda) pengecualian akan dimunculkan.

Jika tidak ada skema in-line yang ditentukan, struktur relasional diperluas melalui inferensi, seperlunya, sesuai dengan struktur dokumen XML. Jika skema tidak dapat diperluas melalui inferensi untuk mengekspos semua data, pengecualian akan dimunculkan.

Catatan

DataSet tidak mengaitkan elemen XML dengan yang sesuai DataColumn atau DataTable ketika karakter XML hukum seperti ("_") diloloskan dalam XML serial. Itu DataSet sendiri hanya lolos dari karakter XML ilegal dalam nama elemen XML dan karenanya hanya dapat menggunakan yang sama. Ketika karakter hukum dalam nama elemen XML lolos, elemen diabaikan saat memproses.

using System.Data;
public class A {
   static void Main(string[] args) {
      DataTable tabl = new DataTable("mytable");
      tabl.Columns.Add(new DataColumn("id", typeof(int)));
      for (int i = 0; i < 10; i++) {
         DataRow row = tabl.NewRow();
         row["id"] = i;
         tabl.Rows.Add(row);
      }
      tabl.WriteXml("f.xml", XmlWriteMode.WriteSchema);
      DataTable newt = new DataTable();
      newt.ReadXml("f.xml");
   }
}

Lihat juga

Berlaku untuk

ReadXml(XmlReader)

Sumber:
DataTable.cs
Sumber:
DataTable.cs
Sumber:
DataTable.cs

Membaca Skema xml dan Data ke DataTable dalam menggunakan yang ditentukan XmlReader.

public:
 System::Data::XmlReadMode ReadXml(System::Xml::XmlReader ^ reader);
public System.Data.XmlReadMode ReadXml (System.Xml.XmlReader? reader);
public System.Data.XmlReadMode ReadXml (System.Xml.XmlReader reader);
member this.ReadXml : System.Xml.XmlReader -> System.Data.XmlReadMode
Public Function ReadXml (reader As XmlReader) As XmlReadMode

Parameter

reader
XmlReader

XmlReader yang akan digunakan untuk membaca data.

Mengembalikan

yang XmlReadMode digunakan untuk membaca data.

Contoh

Contoh berikut membuat yang DataTable berisi dua kolom dan sepuluh baris. Contoh menulis DataTable skema dan data ke XmlReader. Contoh membuat detik DataTable dan memanggil ReadXml metode untuk mengisinya dengan skema dan data dari XmlReader instans.

private static void DemonstrateReadWriteXMLDocumentWithReader()
{
    DataTable table = CreateTestTable("XmlDemo");
    PrintValues(table, "Original table");

    // Write the schema and data to XML in a memory stream.
    System.IO.MemoryStream xmlStream = new System.IO.MemoryStream();
    table.WriteXml(xmlStream, XmlWriteMode.WriteSchema);

    // Rewind the memory stream.
    xmlStream.Position = 0;

    System.Xml.XmlTextReader reader =
        new System.Xml.XmlTextReader(xmlStream);
    DataTable newTable = new DataTable();
    newTable.ReadXml(reader);

    // Print out values in the table.
    PrintValues(newTable, "New table");
}

private static DataTable CreateTestTable(string tableName)
{
    // Create a test DataTable with two columns and a few rows.
    DataTable table = new DataTable(tableName);
    DataColumn column = new DataColumn("id", typeof(System.Int32));
    column.AutoIncrement = true;
    table.Columns.Add(column);

    column = new DataColumn("item", typeof(System.String));
    table.Columns.Add(column);

    // Add ten rows.
    DataRow row;
    for (int i = 0; i <= 9; i++)
    {
        row = table.NewRow();
        row["item"] = "item " + i;
        table.Rows.Add(row);
    }

    table.AcceptChanges();
    return table;
}

private static void PrintValues(DataTable table, string label)
{
    Console.WriteLine(label);
    foreach (DataRow row in table.Rows)
    {
        foreach (DataColumn column in table.Columns)
        {
            Console.Write("\t{0}", row[column]);
        }
        Console.WriteLine();
    }
}
Private Sub DemonstrateReadWriteXMLDocumentWithReader()
  Dim table As DataTable = CreateTestTable("XmlDemo")
  PrintValues(table, "Original table")

  ' Write the schema and data to XML in a memory stream.
  Dim xmlStream As New System.IO.MemoryStream()
  table.WriteXml(xmlStream, XmlWriteMode.WriteSchema)

  ' Rewind the memory stream.
  xmlStream.Position = 0

  Dim reader As New System.Xml.XmlTextReader(xmlStream)
  Dim newTable As New DataTable
  newTable.ReadXml(reader)

  ' Print out values in the table.
  PrintValues(newTable, "New Table")
End Sub

Private Function CreateTestTable(ByVal tableName As String) _
  As DataTable
  ' Create a test DataTable with two columns and a few rows.
  Dim table As New DataTable(tableName)
  Dim column As New DataColumn("id", GetType(System.Int32))
  column.AutoIncrement = True
  table.Columns.Add(column)

  column = New DataColumn("item", GetType(System.String))
  table.Columns.Add(column)

  ' Add ten rows.
  Dim row As DataRow
  For i As Integer = 0 To 9
    row = table.NewRow()
    row("item") = "item " & i
    table.Rows.Add(row)
  Next i

  table.AcceptChanges()
  Return table
End Function

Private Sub PrintValues(ByVal table As DataTable, _
  ByVal label As String)
  Console.WriteLine(label)
  For Each row As DataRow In table.Rows
    For Each column As DataColumn In table.Columns
      Console.Write("{0}{1}", ControlChars.Tab, row(column))
    Next column
    Console.WriteLine()
  Next row
End Sub

Keterangan

Saat ini DataTable dan keturunannya dimuat dengan data dari file bernama dalam yang disediakan XmlReader. Perilaku metode ini identik dengan ReadXml metode , kecuali bahwa dalam hal ini, data hanya dimuat untuk tabel saat ini dan keturunannya.

Metode ini ReadXml menyediakan cara untuk membaca data saja, atau data dan skema ke dalam DataTable dari dokumen XML, sedangkan ReadXmlSchema metode hanya membaca skema.

Perhatikan bahwa hal yang sama berlaku untuk WriteXml metode dan WriteXmlSchema , masing-masing. Untuk menulis data XML, atau skema dan data dari DataTable, gunakan WriteXml metode . Untuk menulis hanya skema, gunakan WriteXmlSchema metode .

Catatan

InvalidOperationException Akan dilemparkan jika jenis kolom dalam DataRow yang dibaca dari atau ditulis ke mengimplementasikan IDynamicMetaObjectProvider dan tidak mengimplementasikan IXmlSerializable.

Jika skema in-line ditentukan, skema in-line digunakan untuk memperluas struktur relasional yang ada sebelum memuat data. Jika ada konflik (misalnya, kolom yang sama dalam tabel yang sama yang ditentukan dengan jenis data yang berbeda) pengecualian akan dimunculkan.

Jika tidak ada skema in-line yang ditentukan, struktur relasional diperluas melalui inferensi, seperlunya, sesuai dengan struktur dokumen XML. Jika skema tidak dapat diperluas melalui inferensi untuk mengekspos semua data, pengecualian akan dimunculkan.

Catatan

DataSet tidak mengaitkan elemen XML dengan yang sesuai DataColumn atau DataTable ketika karakter XML hukum seperti ("_") diloloskan dalam XML serial. Itu DataSet sendiri hanya lolos dari karakter XML ilegal dalam nama elemen XML dan karenanya hanya dapat menggunakan yang sama. Ketika karakter hukum dalam nama elemen XML lolos, elemen diabaikan saat memproses.

Lihat juga

Berlaku untuk