Определение таблиц
При выведении схемы для DataSet из XML-документа ADO.NET сначала определяет, какой из XML-элементов представляет таблицы. Следующие структуры XML приводят к таблице схемы DataSet :
Элементы с атрибутами.
Элементы с дочерними элементами.
Повторяющиеся элементы.
Элементы с атрибутами
Элементы с заданными атрибутами приводятся в выведенных таблицах. Например, рассмотрим следующий XML-код:
<DocumentElement>
<Element1 attr1="value1"/>
<Element1 attr1="value2">Text1</Element1>
</DocumentElement>
В процессе вывода создается таблица с именем Element1.
Набор данных: DocumentElement
Таблица: Элемент1
attr1 | Element1_Text |
---|---|
value1 | |
value2 | Text1 |
Элементы с дочерними элементами
Элементы, имеющие дочерние элементы, приводятся в выведенных таблицах. Например, рассмотрим следующий XML-код:
<DocumentElement>
<Element1>
<ChildElement1>Text1</ChildElement1>
</Element1>
</DocumentElement>
В процессе вывода создается таблица с именем Element1.
Набор данных: DocumentElement
Таблица: Элемент1
ChildElement1 |
---|
Text1 |
Элемент документа или корневой элемент приводится в выведенной таблице, если он имеет атрибуты или дочерние элементы, которые выводятся в виде столбцов. Если элемент документа не имеет атрибутов и дочерних элементов, которые будут выводиться как столбцы, элемент выводится как набор данных. Например, рассмотрим следующий XML-код:
<DocumentElement>
<Element1>Text1</Element1>
<Element2>Text2</Element2>
</DocumentElement>
В процессе вывода создается таблица с именем DocumentElement.
Набор данных: NewDataSet
Таблица: DocumentElement
Element1 | Element2 |
---|---|
Text1 | Text2 |
В качестве альтернативы рассмотрим следующий XML-код:
<DocumentElement>
<Element1 attr1="value1" attr2="value2"/>
</DocumentElement>
Процесс вывода создает набор данных с именем DocumentElement, содержащий таблицу с именем Element1.
Набор данных: DocumentElement
Таблица: Элемент1
attr1 | attr2 |
---|---|
value1 | value2 |
Повторяющиеся элементы
Повторяющиеся элементы приводятся в выведенной таблице. Например, рассмотрим следующий XML-код:
<DocumentElement>
<Element1>Text1</Element1>
<Element1>Text2</Element1>
</DocumentElement>
В процессе вывода создается таблица с именем Element1.
Набор данных: DocumentElement
Таблица: Элемент1
Element1_Text |
---|
Text1 |
Text2 |