我想讀取一個XML文件到一個DataTable中,我很難匹配架構,並正確轉換它。這是XML可能是什麼樣子......將XML讀取到DataTable中。需要匹配架構
<?xml version="1.0" encoding="utf-8"?>
<School>
<Teacher>
<Name>Teacher1</Name>
<Student>
<Student-Name>Student1</Student-Name>
<Gender>M</Gender>
<Address>Address1</Address>
</Student>
<Student>
<Student-Name>Student2</Student-Name>
<Gender>F</Gender>
<Address>Address2</Address>
</Student>
</Teacher>
<Teacher>
<Name>Teacher2</Name>
<Student>
<Student-Name>Student3</Student-Name>
<Gender>F</Gender>
<Address>Address3</Address>
</Student>
</Teacher>
</School>
我需要將其添加到DataTable,使其表看起來像這樣
名稱 學生-Name 性別 地址
------------------- ---------------------------------
Teacher1 Student1 中號 地址1
Teacher1 STUDENT2 ˚F 地址2
Teacher2 學生三 ˚F 地址3
DataTable.ReadXML() - >不會允許我讀在這個XML文件中。錯誤表示DataTable不支持模式推理
DataSet.ReadXML() - >在模式中沒有選取,並將其分成兩個表,第一個是Teacher Table,第二個是Student Table,甚至是當它被設置爲推斷模式。
另一個問題是,我正在這樣做幾種類型的XML文件。所有這些節點都有不同數量的嵌套在學生中的節點,我需要使這個通用節點能夠讀取XML,而不管節點的數量如何。
我想知道是否需要設置一個XmlReader來讀取它,或者是否需要使用DataSet.ReadXML()/ DataTable.ReadXML()上的任何設置。謝謝。
謝謝。我最終合併了由DataSet.ReadXml()創建的兩個表,因爲它們被分配了一個將嵌套節點與父節點相關聯的額外值。 – JBlaze