DataTable.ReadXmlSchema Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Načte schéma XML do objektu DataTable.
Přetížení
ReadXmlSchema(XmlReader) |
Načte schéma XML do objektu DataTable pomocí zadaného XmlReader. |
ReadXmlSchema(String) |
Načte schéma XML ze DataTable zadaného souboru. |
ReadXmlSchema(TextReader) |
Načte schéma XML do objektu DataTable pomocí zadaného TextReader. |
ReadXmlSchema(Stream) |
Načte schéma XML do objektu DataTable pomocí zadaného datového proudu. |
Poznámky
ReadXmlSchema
Pomocí metody vytvořte schéma pro DataTable. Schéma obsahuje definice tabulky, relace a omezení.
K zápisu schématu do dokumentu XML použijte metodu WriteXmlSchema .
Schéma XML je interpretováno podle standardu XSD.
Metoda je ReadXmlSchema
obecně vyvolána před vyvoláním ReadXml metody, která se používá k vyplnění DataTable.
ReadXmlSchema(XmlReader)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
public:
void ReadXmlSchema(System::Xml::XmlReader ^ reader);
public void ReadXmlSchema (System.Xml.XmlReader? reader);
public void ReadXmlSchema (System.Xml.XmlReader reader);
member this.ReadXmlSchema : System.Xml.XmlReader -> unit
Public Sub ReadXmlSchema (reader As XmlReader)
Parametry
Příklady
Následující konzolová aplikace vytvoří novou DataTablea zapíše schéma pro danou MemoryStreamtabulku do . Potom příklad vytvoří nový DataTable a načte své schéma z uloženého schématu XML pomocí XmlTextReader (který dědí z XmlReader) jako zdroj.
private static void DemonstrateReadWriteXMLSchemaWithReader()
{
DataTable table = CreateTestTable("XmlDemo");
PrintSchema(table, "Original table");
// Write the schema to XML in a memory stream.
System.IO.MemoryStream xmlStream =
new System.IO.MemoryStream();
table.WriteXmlSchema(xmlStream);
// Rewind the memory stream.
xmlStream.Position = 0;
DataTable newTable = new DataTable();
System.Xml.XmlTextReader reader =
new System.Xml.XmlTextReader(xmlStream);
newTable.ReadXmlSchema(reader);
// Print out values in the table.
PrintSchema(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 PrintSchema(DataTable table, string label)
{
// Display the schema of the supplied DataTable:
Console.WriteLine(label);
foreach (DataColumn column in table.Columns)
{
Console.WriteLine("\t{0}: {1}", column.ColumnName,
column.DataType.Name);
}
Console.WriteLine();
}
Private Sub DemonstrateReadWriteXMLSchemaWithReader()
Dim table As DataTable = CreateTestTable("XmlDemo")
PrintSchema(table, "Original table")
' Write the schema to XML in a memory stream.
Dim xmlStream As New System.IO.MemoryStream()
table.WriteXmlSchema(xmlStream)
' Rewind the memory stream.
xmlStream.Position = 0
Dim newTable As New DataTable
Dim reader As New System.Xml.XmlTextReader(xmlStream)
newTable.ReadXmlSchema(reader)
' Print out values in the table.
PrintSchema(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 PrintSchema(ByVal table As DataTable, _
ByVal label As String)
' Display the schema of the supplied DataTable:
Console.WriteLine(label)
For Each column As DataColumn In table.Columns
Console.WriteLine("{0}{1}: {2}", ControlChars.Tab, _
column.ColumnName, column.DataType.Name)
Next column
End Sub
Poznámky
ReadXmlSchema Pomocí metody vytvořte schéma pro DataTable. Schéma obsahuje definice tabulky, relace a omezení.
K zápisu schématu do dokumentu XML použijte metodu WriteXmlSchema .
Schéma XML je interpretováno podle standardu XSD.
Pokud se typy msdata:DataType a xs:type neshodují, může dojít k poškození dat. Nebude vyvolána žádná výjimka.
Metoda je ReadXmlSchema
obecně vyvolána před vyvoláním ReadXml metody, která se používá k vyplnění DataTable.
Poznámka
Způsob, jak vytvořit vnořenou relaci pomocí schématu XML, je mít implicitní vnořené elementy. Kromě toho může být vnořená relace znovu propojena tak, aby používala explicitní názvy sloupců. Elementy musí být implicitně vnořené, aby se odpovídající tabulky DataTables zapojily do vnořené relace.
Viz také
Platí pro
ReadXmlSchema(String)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
Načte schéma XML ze DataTable zadaného souboru.
public:
void ReadXmlSchema(System::String ^ fileName);
public void ReadXmlSchema (string fileName);
member this.ReadXmlSchema : string -> unit
Public Sub ReadXmlSchema (fileName As String)
Parametry
- fileName
- String
Název souboru, ze kterého se mají číst informace o schématu.
Příklady
Následující konzolová aplikace vytvoří novou DataTablea zapíše schéma pro danou tabulku do souboru. Potom příklad vytvoří nový DataTable a načte své schéma z uloženého schématu XML, přičemž jako zdroj použije soubor .
private static void DemonstrateReadWriteXMLSchemaWithFile()
{
DataTable table = CreateTestTable("XmlDemo");
PrintSchema(table, "Original table");
// Write the schema to XML in a file.
string xmlFile = "C:\\SchemaDemo.xml";
table.WriteXmlSchema(xmlFile);
DataTable newTable = new DataTable();
newTable.ReadXmlSchema(xmlFile);
// Print out values in the table.
PrintSchema(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 PrintSchema(DataTable table, string label)
{
// Display the schema of the supplied DataTable:
Console.WriteLine(label);
foreach (DataColumn column in table.Columns)
{
Console.WriteLine("\t{0}: {1}", column.ColumnName,
column.DataType.Name);
}
Console.WriteLine();
}
Private Sub DemonstrateReadWriteXMLSchemaWithFile()
Dim table As DataTable = CreateTestTable("XmlDemo")
PrintSchema(table, "Original table")
Dim xmlFile As String = "SchemaDemo.xml"
' Write the schema to XML.
table.WriteXmlSchema(xmlFile)
Dim newTable As New DataTable
newTable.ReadXmlSchema(xmlFile)
' Print out values in the table.
PrintSchema(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 PrintSchema(ByVal table As DataTable, _
ByVal label As String)
' Display the schema of the supplied DataTable:
Console.WriteLine(label)
For Each column As DataColumn In table.Columns
Console.WriteLine("{0}{1}: {2}", ControlChars.Tab, _
column.ColumnName, column.DataType.Name)
Next column
End Sub
Poznámky
ReadXmlSchema Pomocí metody vytvořte schéma pro DataTable. Schéma obsahuje definice tabulky, relace a omezení.
K zápisu schématu do dokumentu XML použijte metodu WriteXmlSchema .
Schéma XML je interpretováno podle standardu XSD.
Pokud se typy msdata:DataType a xs:type neshodují, může dojít k poškození dat. Nebude vyvolána žádná výjimka.
Metoda je ReadXmlSchema
obecně vyvolána před vyvoláním ReadXml metody, která se používá k vyplnění DataTable
.
Pokud chcete vytvořit vnořenou relaci pomocí schématu XML, použijte implicitní vnořené elementy. Můžete také překonfigurovat vnořenou relaci tak, aby používala explicitní názvy sloupců. Elementy musí být implicitně vnořené, aby se odpovídající tabulky DataTables mohly účastnit vnořené relace.
Viz také
Platí pro
ReadXmlSchema(TextReader)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
Načte schéma XML do objektu DataTable pomocí zadaného TextReader.
public:
void ReadXmlSchema(System::IO::TextReader ^ reader);
public void ReadXmlSchema (System.IO.TextReader? reader);
public void ReadXmlSchema (System.IO.TextReader reader);
member this.ReadXmlSchema : System.IO.TextReader -> unit
Public Sub ReadXmlSchema (reader As TextReader)
Parametry
- reader
- TextReader
Slouží TextReader ke čtení informací o schématu.
Příklady
Následující konzolová aplikace vytvoří novou DataTablea zapíše schéma pro danou MemoryStreamtabulku do . Potom příklad vytvoří nový DataTable a načte své schéma z uloženého schématu XML pomocí StreamReader (který dědí z TextReader) jako zdroj.
private static void DemonstrateReadWriteXMLSchemaWithReader()
{
DataTable table = CreateTestTable("XmlDemo");
PrintSchema(table, "Original table");
// Write the schema to XML in a memory stream.
System.IO.MemoryStream xmlStream = new System.IO.MemoryStream();
table.WriteXmlSchema(xmlStream);
// Rewind the memory stream.
xmlStream.Position = 0;
DataTable newTable = new DataTable();
System.IO.StreamReader reader =
new System.IO.StreamReader(xmlStream);
newTable.ReadXmlSchema(reader);
// Print out values in the table.
PrintSchema(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 PrintSchema(DataTable table, string label)
{
// Display the schema of the supplied DataTable:
Console.WriteLine(label);
foreach (DataColumn column in table.Columns)
{
Console.WriteLine("\t{0}: {1}",
column.ColumnName, column.DataType.Name);
}
Console.WriteLine();
}
Private Sub DemonstrateReadWriteXMLSchemaWithReader()
Dim table As DataTable = CreateTestTable("XmlDemo")
PrintSchema(table, "Original table")
' Write the schema to XML in a memory stream.
Dim xmlStream As New System.IO.MemoryStream()
table.WriteXmlSchema(xmlStream)
' Rewind the memory stream.
xmlStream.Position = 0
Dim newTable As New DataTable
Dim reader As New System.IO.StreamReader(xmlStream)
newTable.ReadXmlSchema(reader)
' Print out values in the table.
PrintSchema(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 PrintSchema(ByVal table As DataTable, _
ByVal label As String)
' Display the schema of the supplied DataTable:
Console.WriteLine(label)
For Each column As DataColumn In table.Columns
Console.WriteLine("{0}{1}: {2}", ControlChars.Tab, _
column.ColumnName, column.DataType.Name)
Next column
End Sub
Poznámky
ReadXmlSchema Pomocí metody vytvořte schéma pro DataTable. Schéma obsahuje definice tabulky, relace a omezení.
K zápisu schématu do dokumentu XML použijte metodu WriteXmlSchema .
Schéma XML je interpretováno podle standardu XSD.
Pokud se typy msdata:DataType a xs:type neshodují, může dojít k poškození dat. Nebude vyvolána žádná výjimka.
Metoda je ReadXmlSchema
obecně vyvolána před vyvoláním ReadXml metody, která se používá k vyplnění DataTable.
Pokud chcete vytvořit vnořenou relaci pomocí schématu XML, použijte implicitní vnořené elementy. Můžete také překonfigurovat vnořenou relaci tak, aby používala explicitní názvy sloupců. Elementy musí být implicitně vnořené, aby se odpovídající tabulky DataTables mohly účastnit vnořené relace.
Viz také
Platí pro
ReadXmlSchema(Stream)
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
- Zdroj:
- DataTable.cs
Načte schéma XML do objektu DataTable pomocí zadaného datového proudu.
public:
void ReadXmlSchema(System::IO::Stream ^ stream);
public void ReadXmlSchema (System.IO.Stream? stream);
public void ReadXmlSchema (System.IO.Stream stream);
member this.ReadXmlSchema : System.IO.Stream -> unit
Public Sub ReadXmlSchema (stream As Stream)
Parametry
- stream
- Stream
Datový proud použitý ke čtení schématu.
Příklady
Následující konzolová aplikace vytvoří novou DataTablea zapíše schéma pro danou MemoryStreamtabulku do . Potom příklad vytvoří nový DataTable a načte své schéma z uloženého schématu XML.
private static void DemonstrateReadWriteXMLSchemaWithStream()
{
DataTable table = CreateTestTable("XmlDemo");
PrintSchema(table, "Original table");
// Write the schema to XML in a memory stream.
System.IO.MemoryStream xmlStream = new System.IO.MemoryStream();
table.WriteXmlSchema(xmlStream);
// Rewind the memory stream.
xmlStream.Position = 0;
DataTable newTable = new DataTable();
newTable.ReadXmlSchema(xmlStream);
// Print out values in the table.
PrintSchema(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 PrintSchema(DataTable table, string label)
{
// Display the schema of the supplied DataTable:
Console.WriteLine(label);
foreach (DataColumn column in table.Columns)
{
Console.WriteLine("\t{0}: {1}", column.ColumnName,
column.DataType.Name);
}
Console.WriteLine();
}
Private Sub DemonstrateReadWriteXMLSchemaWithStream()
Dim table As DataTable = CreateTestTable("XmlDemo")
PrintSchema(table, "Original table")
' Write the schema to XML in a memory stream.
Dim xmlStream As New System.IO.MemoryStream()
table.WriteXmlSchema(xmlStream)
' Rewind the memory stream.
xmlStream.Position = 0
Dim newTable As New DataTable
newTable.ReadXmlSchema(xmlStream)
' Print out values in the table.
PrintSchema(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 PrintSchema(ByVal table As DataTable, _
ByVal label As String)
' Display the schema of the supplied DataTable:
Console.WriteLine(label)
For Each column As DataColumn In table.Columns
Console.WriteLine("{0}{1}: {2}", ControlChars.Tab, _
column.ColumnName, column.DataType.Name)
Next column
End Sub
Poznámky
ReadXmlSchema Pomocí metody vytvořte schéma pro DataTable. Schéma obsahuje definice tabulky, relace a omezení.
K zápisu schématu do dokumentu XML použijte metodu WriteXmlSchema .
Schéma XML je interpretováno podle standardu XSD.
Pokud se typy msdata:DataType a xs:type neshodují, může dojít k poškození dat. Nebude vyvolána žádná výjimka.
Metoda je ReadXmlSchema
obecně vyvolána před vyvoláním ReadXml metody, která se používá k vyplnění DataTable.
Pokud chcete vytvořit vnořenou relaci pomocí schématu XML, použijte implicitní vnořené elementy. Můžete také nakonfigurovat vnořenou relaci tak, aby používala explicitní názvy sloupců. Elementy musí být implicitně vnořené, aby se odpovídající tabulky DataTables mohly účastnit vnořené relace.