推斷限制 (ADO.NET)
根據每份文件的 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 結構描述 (XSD) 衍生 DataSet 關聯式結構。
請參閱
概念
從 XML 載入 DataSet 結構描述資訊 (ADO.NET)