DataTable.ReadXmlSchema Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Lit un schéma XML dans le DataTable.
Surcharges
ReadXmlSchema(XmlReader) |
Lit un schéma XML dans le DataTable à l'aide du XmlReader spécifié. |
ReadXmlSchema(String) |
Lit un schéma XML dans le DataTable à partir du fichier spécifié. |
ReadXmlSchema(TextReader) |
Lit un schéma XML dans le DataTable à l'aide du TextReader spécifié. |
ReadXmlSchema(Stream) |
Lit un schéma XML dans le DataTable à l'aide du flux de données spécifié. |
Remarques
Utilisez la ReadXmlSchema
méthode pour créer le schéma d’un DataTable. Le schéma comprend des définitions de table, de relation et de contrainte.
Pour écrire un schéma dans un document XML, utilisez la WriteXmlSchema méthode .
Le schéma XML est interprété conformément à la norme XSD.
La ReadXmlSchema
méthode est généralement appelée avant d’appeler la ReadXml méthode utilisée pour remplir le DataTable.
ReadXmlSchema(XmlReader)
- Source:
- DataTable.cs
- Source:
- DataTable.cs
- Source:
- 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)
Paramètres
Exemples
L’application console suivante crée un nouveau DataTableet écrit le schéma de cette table dans un MemoryStream. Ensuite, l’exemple crée un nouveau DataTable et lit son schéma à partir du schéma XML enregistré, en utilisant un XmlTextReader (qui hérite de XmlReader) comme source.
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
Remarques
Utilisez la ReadXmlSchema méthode pour créer le schéma d’un DataTable. Le schéma comprend des définitions de table, de relation et de contrainte.
Pour écrire un schéma dans un document XML, utilisez la WriteXmlSchema méthode .
Le schéma XML est interprété conformément à la norme XSD.
Une altération des données peut se produire si les types msdata :DataType et xs :type ne correspondent pas. Aucune exception ne sera levée.
La ReadXmlSchema
méthode est généralement appelée avant d’appeler la ReadXml méthode utilisée pour remplir le DataTable.
Notes
La façon de créer une relation imbriquée à l’aide d’un schéma XML consiste à avoir des éléments imbriqués implicites. En outre, la relation imbriquée peut être re-câblée pour utiliser des noms de colonnes explicites. Il est obligatoire que les éléments soient implicitement imbriqués pour que les DataTables correspondants participent à une relation imbriquée.
Voir aussi
S’applique à
ReadXmlSchema(String)
- Source:
- DataTable.cs
- Source:
- DataTable.cs
- Source:
- DataTable.cs
Lit un schéma XML dans le DataTable à partir du fichier spécifié.
public:
void ReadXmlSchema(System::String ^ fileName);
public void ReadXmlSchema (string fileName);
member this.ReadXmlSchema : string -> unit
Public Sub ReadXmlSchema (fileName As String)
Paramètres
- fileName
- String
Nom du fichier à partir duquel lire les informations de schéma.
Exemples
L’application console suivante crée un nouveau DataTableet écrit le schéma de cette table dans un fichier. Ensuite, l’exemple crée un nouveau DataTable et lit son schéma à partir du schéma XML enregistré, en utilisant le fichier comme source.
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
Remarques
Utilisez la ReadXmlSchema méthode pour créer le schéma d’un DataTable. Le schéma comprend des définitions de table, de relation et de contrainte.
Pour écrire un schéma dans un document XML, utilisez la WriteXmlSchema méthode .
Le schéma XML est interprété conformément à la norme XSD.
Une altération des données peut se produire si les types msdata :DataType et xs :type ne correspondent pas. Aucune exception ne sera levée.
La ReadXmlSchema
méthode est généralement appelée avant d’appeler la ReadXml méthode utilisée pour remplir le DataTable
.
Pour créer une relation imbriquée à l’aide d’un schéma XML, utilisez des éléments imbriqués implicites. Vous pouvez également reconfigurer la relation imbriquée pour utiliser des noms de colonnes explicites. Les éléments doivent être implicitement imbriqués pour que les DataTables correspondants participent à une relation imbriquée.
Voir aussi
S’applique à
ReadXmlSchema(TextReader)
- Source:
- DataTable.cs
- Source:
- DataTable.cs
- Source:
- DataTable.cs
Lit un schéma XML dans le DataTable à l'aide du TextReader spécifié.
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)
Paramètres
- reader
- TextReader
TextReader utilisé pour lire les informations de schéma.
Exemples
L’application console suivante crée un nouveau DataTableet écrit le schéma de cette table dans un MemoryStream. Ensuite, l’exemple crée un nouveau DataTable et lit son schéma à partir du schéma XML enregistré, en utilisant un StreamReader (qui hérite de TextReader) comme source.
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
Remarques
Utilisez la ReadXmlSchema méthode pour créer le schéma d’un DataTable. Le schéma comprend des définitions de table, de relation et de contrainte.
Pour écrire un schéma dans un document XML, utilisez la WriteXmlSchema méthode .
Le schéma XML est interprété conformément à la norme XSD.
Une altération des données peut se produire si les types msdata :DataType et xs :type ne correspondent pas. Aucune exception ne sera levée.
La ReadXmlSchema
méthode est généralement appelée avant d’appeler la ReadXml méthode utilisée pour remplir le DataTable.
Pour créer une relation imbriquée à l’aide d’un schéma XML, utilisez des éléments imbriqués implicites. Vous pouvez également reconfigurer la relation imbriquée pour utiliser des noms de colonnes explicites. Les éléments doivent être implicitement imbriqués pour que les DataTables correspondants participent à une relation imbriquée.
Voir aussi
S’applique à
ReadXmlSchema(Stream)
- Source:
- DataTable.cs
- Source:
- DataTable.cs
- Source:
- DataTable.cs
Lit un schéma XML dans le DataTable à l'aide du flux de données spécifié.
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)
Paramètres
- stream
- Stream
Flux de données utilisé pour lire le schéma.
Exemples
L’application console suivante crée un nouveau DataTableet écrit le schéma de cette table dans un MemoryStream. Ensuite, l’exemple crée un nouveau DataTable et lit son schéma à partir du schéma XML enregistré.
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
Remarques
Utilisez la ReadXmlSchema méthode pour créer le schéma d’un DataTable. Le schéma comprend des définitions de table, de relation et de contrainte.
Pour écrire un schéma dans un document XML, utilisez la WriteXmlSchema méthode .
Le schéma XML est interprété conformément à la norme XSD.
Une altération des données peut se produire si les types msdata :DataType et xs :type ne correspondent pas. Aucune exception ne sera levée.
La ReadXmlSchema
méthode est généralement appelée avant d’appeler la ReadXml méthode utilisée pour remplir le DataTable.
Pour créer une relation imbriquée à l’aide d’un schéma XML, utilisez des éléments imbriqués implicites. Vous pouvez également configurer la relation imbriquée pour utiliser des noms de colonnes explicites. Les éléments doivent être implicitement imbriqués pour que les DataTables correspondants participent à une relation imbriquée.