我有一個XML文件,它看起來像這樣:閱讀嵌套的XML文件
<SalesReps>
<SalesRep>
<repname> Bob</repname>
<repid>100</repid>
<customers>
<customer>
<custname>ABC Company</custname>
<custno>51233</custno>
</customer>
<customer>
<custname>XYZ Inc.</custname>
<custno>29943</custno>
</customer>
</customers>
</SalesRep>
<SalesRep>
<repname>Sue</repname>
<repid>43</repid>
<customers>
<customer>
<custname>Petes Tire Co</custname>
<custno>49999</custno>
</customer>
<customer>
<custname>Suzy's Sewing</custname>
<custno>81234</custno>
</customer>
</customers>
</SalesRep>
</SalesReps>
我想用下面的代碼來讀取它:
Dim salesreps = From reps In xe.Descendants("SalesReps") Select reps
Dim el = (From rep In salesreps _
Select New With {.repname = rep.<repname>, _
.repid = rep.<repid>,
.customers = (From custs In rep.<Customers> _
Select New With { _
.customer = (_
From cust In custs.<customer> _
Select New With {
.custname = cust.<custname>.Value, _
.custno = cust.<custno>.Value} _
)} _
) _
} _
)
我可以得到repname和repid,但沒有得到custname和custno的客戶名單。我究竟做錯了什麼?
Thx
我還沒有與LINQ熟悉直接回答你的問題,但我想問問你,如果你有或將考慮使用XML反序列化來讀取這個XML文檔? LINQ是查詢文檔某些部分的一種便捷方式,但如果您只是閱讀整個文檔,看起來工作量很大,複雜性和易碎性。 –