Partager via


Inférence des tables (ADO.NET)

Lors de l'inférence du schéma d'un objet DataSet à partir d'un document XML, ADO.NET identifie d'abord les éléments XML qui représentent des tables. Les structures XML suivantes donneront une table pour le schéma du DataSet :

  • éléments avec attributs ;

  • éléments avec éléments enfants ;

  • éléments qui se répètent.

Éléments avec attributs

Les éléments contenant des attributs spécifiés donnent des tables déduites. Examinons, par exemple, le code XML suivant :

<DocumentElement>
  <Element1 attr1="value1"/>
  <Element1 attr1="value2">Text1</Element1>
</DocumentElement>

Le processus d'inférence produit une table nommée « Element1 ».

DataSet : DocumentElement

Table : Element1

attr1

Element1_Text

value1

   

value2

Text1

Éléments avec éléments enfants

Les éléments possédant des éléments enfants donnent des tables déduites. Examinons, par exemple, le code XML suivant :

<DocumentElement>
  <Element1>
    <ChildElement1>Text1</ChildElement1>
  </Element1>
</DocumentElement>

Le processus d'inférence produit une table nommée « Element1 ».

DataSet : DocumentElement

Table : Element1

ChildElement1

Text1

L'élément document, ou racine, donne une table déduite s'il comporte des attributs ou des éléments enfants qui sont inférés en tant que colonnes. Si l'élément document ne comporte pas d'attributs ni d'éléments enfants qui seraient déduits en tant que colonnes, il est déduit en tant que DataSet. Examinons, par exemple, le code XML suivant :

<DocumentElement>
  <Element1>Text1</Element1>
  <Element2>Text2</Element2>
</DocumentElement>

Le processus d'inférence produit une table nommée « DocumentElement ».

DataSet : NewDataSet

Table : DocumentElement

Element1

Element2

Text1

Text2

Examinons également le code XML suivant :

<DocumentElement>
  <Element1 attr1="value1" attr2="value2"/>
</DocumentElement>

Le processus d'inférence produit un DataSet nommé « DocumentElement » contenant une table nommée « Element1 ».

DataSet : DocumentElement

Table : Element1

attr1

attr2

value1

value2

Éléments qui se répètent

Les éléments qui se répètent donnent une seule table déduite. Examinons, par exemple, le code XML suivant :

<DocumentElement>
  <Element1>Text1</Element1>
  <Element1>Text2</Element1>
</DocumentElement>

Le processus d'inférence produit une table nommée « Element1 ».

DataSet : DocumentElement

Table : Element1

Element1_Text

Text1

Text2

Voir aussi

Concepts

Chargement d'un DataSet à partir de XML (ADO.NET)

Chargement des informations de schéma d'un DataSet à partir de XML (ADO.NET)

Autres ressources

Déduction de la structure relationnelle d'un DataSet à partir de XML (ADO.NET)

Utilisation de XML dans un DataSet (ADO.NET)

Objets DataSet, DataTable et DataView (ADO.NET)