推斷限制
根據每份文件的 XML 項目,當您執行從 XML 推斷 DataSet 結構描述的處理序時,可能會得到不同的結構描述。例如,請考量下列 XML 文件。
Document1:
<DocumentElement> <Element1>Text1</Element1> <Element1>Text2</Element1> </DocumentElement>
Document2:
<DocumentElement> <Element1>Text1</Element1> </DocumentElement>
若為 "Document1",則因為 "Element1" 是重複的項目,所以推斷程序會產生名為 "DocumentElement" 的 DataSet,和名為 "Element1" 的資料表。
DataSet: DocumentElement
Table: Element1
Element1_Text |
---|
Text1 |
Text2 |
但是,推斷程序會為 "Document2" 產生名為 "NewDataSet" 的 DataSet,和名為 "DocumentElement" 的資料表。"Element1" 會被推斷為資料行,因為它沒有屬性和項目子系。
DataSet: NewDataSet
Table: DocumentElement
Element1 |
---|
Text1 |
這兩份 XML 文件原本可能意圖要產生相同的結構描述,但是根據每份文件包含的項目,推斷程序產生了相當不同的結果。
若要避免從 XML 文件產生結構描述時發生不一致的情況,建議您從 XML 載入 DataSet 時,使用 XML 結構描述定義語言 (XSD) 或 XML 資料精簡 (XDR) 來明確地指定結構描述。如需使用 XML 結構描述明確指定 DataSet 結構描述的相關資訊,請參閱從 XML 結構描述 (XSD) 產生 DataSet 關聯式結構。
請參閱
概念
從 XML 載入 DataSet
從 XML 載入 DataSet 結構描述資訊
其他資源
從 XML 推斷 DataSet 關聯式結構
在 DataSet 中使用 XML
使用 ADO.NET 中的 DataSets