2013-08-27 84 views
1

我正在嘗試使用數據集讀取XML文件。 然後使用數據集內的表遍歷信息。 我遇到的麻煩是讀取其中一個表格內的列的其中一個複雜數據類型。將XML複雜數據類型讀入數據集

希望示例代碼在繪製圖片時比我更好。

XML 
<persons> 
    <person> 
    <firstName>John</firstName> 
    <lastName>Smith</lastName> 
    <sin>123456</sin> 
    <phone>5555555555</phone> 
    <address> 
     <street1>123 fake st</street1> 
     <zip>12345</zip> 
    </address> 
</person> 

所以我讀的XML文件:

DataSet.readXML(textReader); 
DataTable dt = dataSet.Tables["person"]  //will let me iterate through the person 
    foreach(dataRow dr in dt.Rows) 
    { 
     console.writeline(dr[firstName]); 
     consele.writeline(dr[lastName]); 
     console.writeline(dr[address]); //This gives me an integer 
    } 

如何使用類似的方法上面,並有博士[地址]返回我的詳細地址?

回答

1

您可以使用dr.GetChildRows("address")

var address = dr.GetChildRows("address"); 
Console.WriteLine(address["street1"]); 
Console.WriteLine(address["zip"]); 
+0

可悲的是,這並不工作,當我做博士[「地址」]我得到一個無效的轉換消息,當我試圖讓子行我得到一個空數組。 – ihrb