Partager via


DataTable.WriteXmlSchema Méthode

Définition

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML.

Surcharges

WriteXmlSchema(Stream)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le flux de données spécifié.

WriteXmlSchema(TextWriter)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du TextWriter spécifié.

WriteXmlSchema(String)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le fichier spécifié.

WriteXmlSchema(XmlWriter)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du XmlWriter spécifié.

WriteXmlSchema(Stream, Boolean)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le flux de données spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

WriteXmlSchema(TextWriter, Boolean)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du TextWriter spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

WriteXmlSchema(XmlWriter, Boolean)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du XmlWriter spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

WriteXmlSchema(String, Boolean)

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le fichier spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

Exemples

L’application console suivante crée deux DataTable instances, ajoute chacune à un DataSet, crée un DataRelation qui associe les deux tables, puis utilise la WriteXmlSchema méthode pour écrire les données contenues dans la table parente dans un TextWriter. L’exemple illustre le comportement lors de la définition du writeHierarchy paramètre sur chacune de ses valeurs.

Notes

Cet exemple montre comment utiliser l’une des versions surchargées de WriteXmlSchema Pour d’autres exemples qui peuvent être disponibles, consultez les rubriques de surcharge individuelles.

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.WriteXmlSchema(writer, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(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 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.WriteXmlSchema(writer, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXmlSchema(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 writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

L'exemple affiche la sortie suivante dans la fenêtre de console :

==============================
Customer table, without hierarchy
==============================
<?xml version="1.0" encoding="utf-16"?>
<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="Ta
ble1">
    <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>
==============================
Customer table, with hierarchy
==============================
<?xml version="1.0" encoding="utf-16"?>
<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" msdata: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>

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

WriteXmlSchema(Stream)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le flux de données spécifié.

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

Paramètres

stream
Stream

Flux de données dans lequel le schéma XML sera écrit.

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Voir aussi

S’applique à

WriteXmlSchema(TextWriter)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du TextWriter spécifié.

public:
 void WriteXmlSchema(System::IO::TextWriter ^ writer);
public void WriteXmlSchema (System.IO.TextWriter? writer);
public void WriteXmlSchema (System.IO.TextWriter writer);
member this.WriteXmlSchema : System.IO.TextWriter -> unit
Public Sub WriteXmlSchema (writer As TextWriter)

Paramètres

writer
TextWriter

TextWriter à l'aide duquel effectuer l'écriture.

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Voir aussi

S’applique à

WriteXmlSchema(String)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le fichier spécifié.

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

Paramètres

fileName
String

Nom du fichier à utiliser.

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Voir aussi

S’applique à

WriteXmlSchema(XmlWriter)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du XmlWriter spécifié.

public:
 void WriteXmlSchema(System::Xml::XmlWriter ^ writer);
public void WriteXmlSchema (System.Xml.XmlWriter? writer);
public void WriteXmlSchema (System.Xml.XmlWriter writer);
member this.WriteXmlSchema : System.Xml.XmlWriter -> unit
Public Sub WriteXmlSchema (writer As XmlWriter)

Paramètres

writer
XmlWriter

XmlWriter à utiliser.

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Voir aussi

S’applique à

WriteXmlSchema(Stream, Boolean)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le flux de données spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

public:
 void WriteXmlSchema(System::IO::Stream ^ stream, bool writeHierarchy);
public void WriteXmlSchema (System.IO.Stream? stream, bool writeHierarchy);
public void WriteXmlSchema (System.IO.Stream stream, bool writeHierarchy);
member this.WriteXmlSchema : System.IO.Stream * bool -> unit
Public Sub WriteXmlSchema (stream As Stream, writeHierarchy As Boolean)

Paramètres

stream
Stream

Flux de données dans lequel le schéma XML sera écrit.

writeHierarchy
Boolean

Si true, écrivez le schéma de la table en cours et de tous ses descendants. Si false (valeur par défaut), écrivez le schéma pour la table en cours uniquement.

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Normalement, la WriteXmlSchema méthode écrit le schéma uniquement pour la table active. Pour écrire le schéma pour la table actuelle et l’ensemble des tables associées descendantes, appelez la méthode avec le writeHierarchy paramètre défini sur true.

Voir aussi

S’applique à

WriteXmlSchema(TextWriter, Boolean)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du TextWriter spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

public:
 void WriteXmlSchema(System::IO::TextWriter ^ writer, bool writeHierarchy);
public void WriteXmlSchema (System.IO.TextWriter? writer, bool writeHierarchy);
public void WriteXmlSchema (System.IO.TextWriter writer, bool writeHierarchy);
member this.WriteXmlSchema : System.IO.TextWriter * bool -> unit
Public Sub WriteXmlSchema (writer As TextWriter, writeHierarchy As Boolean)

Paramètres

writer
TextWriter

TextWriter à l'aide duquel effectuer l'écriture.

writeHierarchy
Boolean

Si true, écrivez le schéma de la table en cours et de tous ses descendants. Si false (valeur par défaut), écrivez le schéma pour la table en cours uniquement.

Exemples

L’application console suivante crée deux DataTable instances, ajoute chacune à un DataSet, crée un DataRelation qui associe les deux tables, puis utilise la WriteXmlSchema méthode pour écrire les données contenues dans la table parente dans un TextWriter. L’exemple illustre le comportement lors de la définition du writeHierarchy paramètre sur chacune de ses valeurs.

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.WriteXmlSchema(writer, false);
    PrintOutput(writer, "Customer table, without hierarchy");

    writer = new System.IO.StringWriter();
    customerTable.WriteXmlSchema(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 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.WriteXmlSchema(writer, False)
  PrintOutput(writer, "Customer table, without hierarchy")

  writer = New System.IO.StringWriter
  customerTable.WriteXmlSchema(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 writer As System.IO.TextWriter, ByVal caption As String)

  Console.WriteLine("==============================")
  Console.WriteLine(caption)
  Console.WriteLine("==============================")
  Console.WriteLine(writer.ToString())
End Sub

L'exemple affiche la sortie suivante dans la fenêtre de console :

==============================
Customer table, without hierarchy
==============================
<?xml version="1.0" encoding="utf-16"?>
<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="Ta
ble1">
    <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>
==============================
Customer table, with hierarchy
==============================
<?xml version="1.0" encoding="utf-16"?>
<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" msdata: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>

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Normalement, la WriteXmlSchema méthode écrit le schéma uniquement pour la table active. Pour écrire le schéma pour la table actuelle et l’ensemble des tables associées descendantes, appelez la méthode avec le writeHierarchy paramètre défini sur true.

Voir aussi

S’applique à

WriteXmlSchema(XmlWriter, Boolean)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML à l'aide du XmlWriter spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

public:
 void WriteXmlSchema(System::Xml::XmlWriter ^ writer, bool writeHierarchy);
public void WriteXmlSchema (System.Xml.XmlWriter? writer, bool writeHierarchy);
public void WriteXmlSchema (System.Xml.XmlWriter writer, bool writeHierarchy);
member this.WriteXmlSchema : System.Xml.XmlWriter * bool -> unit
Public Sub WriteXmlSchema (writer As XmlWriter, writeHierarchy As Boolean)

Paramètres

writer
XmlWriter

XmlWriter utilisé pour écrire le document.

writeHierarchy
Boolean

Si true, écrivez le schéma de la table en cours et de tous ses descendants. Si false (valeur par défaut), écrivez le schéma pour la table en cours uniquement.

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Normalement, la WriteXmlSchema méthode écrit le schéma uniquement pour la table active. Pour écrire le schéma pour la table actuelle et l’ensemble des tables associées descendantes, appelez la méthode avec le writeHierarchy paramètre défini sur true.

Voir aussi

S’applique à

WriteXmlSchema(String, Boolean)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Écrit la structure de données actuelle du DataTable sous la forme d'un schéma XML dans le fichier spécifié. Pour enregistrer le schéma pour la table et tous ses descendants, affectez au paramètre writeHierarchy la valeur true.

public:
 void WriteXmlSchema(System::String ^ fileName, bool writeHierarchy);
public void WriteXmlSchema (string fileName, bool writeHierarchy);
member this.WriteXmlSchema : string * bool -> unit
Public Sub WriteXmlSchema (fileName As String, writeHierarchy As Boolean)

Paramètres

fileName
String

Nom du fichier à utiliser.

writeHierarchy
Boolean

Si true, écrivez le schéma de la table en cours et de tous ses descendants. Si false (valeur par défaut), écrivez le schéma pour la table en cours uniquement.

Remarques

Utilisez la WriteXmlSchema méthode pour écrire le schéma d’un DataTable dans un document XML. Le schéma comprend des définitions de table, de relation et de contrainte.

Le schéma XML est écrit à l’aide de la norme XSD.

Pour écrire les données dans un document XML, utilisez la WriteXml méthode .

Normalement, la WriteXmlSchema méthode écrit le schéma uniquement pour la table active. Pour écrire le schéma de la table active et de son descendant entier, les tables associées, appelez la méthode avec le writeHierarchy paramètre défini sur true.

Voir aussi

S’applique à