Freigeben über


Herleiten von Spalten

Beim Herleiten eines Schemas für ein DataSet von einem XML-Dokument ermittelt ADO.NET zunächst die als Tabellen abzuleitenden Elemente und anschließend, anhand der übrigen XML-Elemente und -Attribute, welche Spalten für diese Tabellen abzuleiten sind. Da Datentypinformationen nur bei Inline-Schemas verfügbar sind, lautet der Datentyp einer hergeleiteten Spalte System.String. Die folgenden XML-Strukturen ergeben Tabellenspalten.

Attribute

Wie unter Herleiten von Tabellen definiert, wird ein Element mit Attributen als Tabelle hergeleitet. Die Attribute dieses Elements werden als Spalten für die betreffende Tabelle hergeleitet. Für die ColumnMapping-Eigenschaft der Spalten wird MappingType.Attribute festgelegt, damit die Spaltennamen als Attribute geschrieben werden, falls das Schema wieder in XML zurückgeschrieben wird. Die Werte der Attribute werden in einer Tabellenzeile gespeichert. Betrachten Sie z. B. folgenden XML-Code:

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

Der Rückschlussprozess erstellt eine Tabelle namens "Element1" mit zwei Spalten, "attr1" und "attr2". Für die ColumnMapping-Eigenschaft beider Spalten wird MappingType.Attribute festgelegt.

DataSet: DocumentElement

Table: Element1

attr1 attr2
value1 value2

Elemente ohne Attribute oder untergeordnete Elemente

Ein Element ohne untergeordnete Elemente oder Attribute wird als Spalte hergeleitet. Für die ColumnMapping-Eigenschaft der Spalte wird MappingType.Element festgelegt. Der Text der untergeordneten Elemente wird in einer Tabellenzeile gespeichert. Betrachten Sie z. B. folgenden XML-Code:

<DocumentElement>
  <Element1>
    <ChildElement1>Text1</ChildElement1>
    <ChildElement2>Text2</ChildElement2>
  </Element1>
</DocumentElement>

Der Rückschlussprozess erstellt eine Tabelle namens "Element1" mit zwei Spalten, "ChildElement1" und "ChildElement2". Für die ColumnMapping-Eigenschaft beider Spalten wird MappingType.Element festgelegt.

DataSet: DocumentElement

Table: Element1

ChildElement1 ChildElement2
Text1 Text2

Siehe auch

Herleiten der relationalen DataSet-Struktur aus XML | Laden eines DataSets aus XML | Laden von DataSet-Schemainformationen aus XML | XML und das DataSet | Erstellen und Verwenden von DataSets