0
好吧,這是推動我堅果,我有,它表示有一個佈局的呼叫詳細記錄和注意它使用一個名稱空間解析與命名空間XML文件
<File>
<FileHeader>
</FileHeader>
<CDRs>
<Call>
</Call>
<Call>
</Call>
</Cdrs>
<FileFooter>
</FileFooter>
</File>
我有一個XML文件沒有問題加載文件,但是當我嘗試
Dim thisNode As XmlNode = xmldoc.SelectSingleNode("meta:File/FileHeader", nsmgr)
我總是什麼也得不到。但是,如果使用
xmlnodes2 = xmldoc.GetElementsByTagName("FileHeader")
我可以訪問我的節點裏面就好了這樣
xmlHeader = xmlnodes2(0)
Dim seqnum As String = ""
Dim EquipmentType As String = xmlHeader.SelectSingleNode("meta:EquipmentType", nsmgr).InnerText
Dim EquipmentId As String = xmlHeader.SelectSingleNode("meta:EquipmentId", nsmgr).InnerText
Dim CreateTime As String = xmlHeader.SelectSingleNode("meta:CreateTime", nsmgr).InnerText
Debug.WriteLine("---------------------Debug File Header----------------------")
Debug.WriteLine(seqnum & " - " & EquipmentType & " - " & EquipmentId & " - " & CreateTime)
Debug.WriteLine(xmlHeader.OuterXml)
這裏是我的XML文件的開始看起來像,所以我想知道我失去了什麼這裏 ?
`<?xml version="1.0" encoding="UTF-8"?>
<File xmlns="http://www.metaswitch.com/cfs/billing/V1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" compatibility="2">
<FileHeader seqnum="23997">
<EquipmentType>Metaswitch CFS</EquipmentType>
<EquipmentId></EquipmentId>
<CreateTime>1491092100003</CreateTime>
</FileHeader>
<CDRs>.....`
我強烈建議使用LINQ到XML。 (我也建議在問題中加入vb.net標籤...) –