推斷限制
根據每份文件的 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
資料表:Element1
Element1_Text |
---|
Text1 |
Text2 |
然而,針對 Document2,推斷程式會產生名為 NewDataSet 的DataSet ,以及名為 DocumentElement 的資料表。Element1 會推斷為資料行,因為其沒有屬性,也沒有子元素。
DataSet:NewDataSet
資料表:DocumentElement
Element1 |
---|
Text1 |
這兩份 XML 文件原本可能意圖要產生相同的結構描述,但是根據每份文件包含的項目,推斷程序產生了相當不同的結果。
若要避免從 XML 文件產生結構描述時發生不一致的情況,建議您從 XML 載入 DataSet 時,使用 XML 結構描述定義語言 (XSD) 或 XML 資料精簡 (XDR) 來明確地指定結構描述。 如需使用 XML 結構描述明確指定 DataSet 結構的詳細資訊,請參閱從 XML 結構描述衍生 DataSet 關聯式結構 (XSD)。