Inferir tabelas

Ao inferir um esquema para um de um DataSet documento XML, ADO.NET primeiro determina quais elementos XML representam tabelas. As seguintes estruturas XML resultam em uma tabela para o esquema DataSet:

  • Elementos com atributos

  • Elementos com elementos filho

  • Elementos recorrentes

Elementos com atributos

Elementos que têm atributos especificados neles resultam em tabelas inferidas. Por exemplo, considere o seguinte XML:

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

O processo de inferência produz uma tabela chamada "Element1".

Dataset: DocumentElement

Tabela: Elemento1

attr1 Element1_Text
value1
value2 Texto1

Elementos com elementos filho

Elementos que têm elementos filho resultam em tabelas inferidas. Por exemplo, considere o seguinte XML:

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

O processo de inferência produz uma tabela chamada "Element1".

Dataset: DocumentElement

Tabela: Elemento1

ChildElement1
Texto1

O elemento de documento ou raiz resultará em uma tabela inferida se ele tiver atributos ou elementos filho inferidos como colunas. Se o elemento de documento não tiver atributos e nenhum elemento filho que seria inferido como colunas, o elemento será inferido como um DataSet. Por exemplo, considere o seguinte XML:

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

O processo de inferência produz uma tabela chamada "DocumentElement".

Dataset: NewDataSet

Tabela: DocumentElement

Elemento1 Elemento2
Texto1 Texto2

Como alternativa, considere o seguinte XML:

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

O processo de inferência produz um DataSet nome "DocumentElement" que contém uma tabela chamada "Element1".

Dataset: DocumentElement

Tabela: Elemento1

attr1 attr2
value1 valor2

Elementos recorrentes

Elementos que repetem resultam em uma única tabela inferida. Por exemplo, considere o seguinte XML:

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

O processo de inferência produz uma tabela chamada "Element1".

Dataset: DocumentElement

Tabela: Elemento1

Element1_Text
Texto1
Texto2

Consulte também