1

Webサービス呼び出しから受け取った次のXMLがあります。

<Wireless xmlns="http://www.hikvision.com/ver10/XMLSchema">
  <enabled>true</enabled>
  <ssid>Network 1</ssid>
  <WirelessSecurity>
    <securityMode>WPA-personal</securityMode>
  </WirelessSecurity>
  <WPA>
    <algorithmType>TKIP</algorithmType>
    <sharedKey>asdfasdf</sharedKey>
    <wpaKeyLength>13</wpaKeyLength>
  </WPA>
  <WEP>
    <authenticationType>auto</authenticationType>
    <defaultTransmitKeyIndex>224</defaultTransmitKeyIndex>
    <EncryptionKeyList>
      <encryptionKey>AScii</encryptionKey>
    </EncryptionKeyList>
  </WEP>
</Wireless>

それを調べてオブジェクトにデータを入力したいのですが、最も基本的な操作を実行できません。。という名前のXDocumentで正常に解析されましたdocument。私がステートメントを書くとき

var elem = document.Element("Wireless");// returns null
var elem = document.Element("ssid");// also returns null
var elem = document.Descendants("ssid");//produces empty enumeration

私がここで間違っていることは何ですか?異なるxml名前空間による問題はありますか?

4

1 に答える 1

2

はい、問題は xml 名前空間に関連しています。

名前空間を次のように宣言します

XNamespace ns = "http://www.hikvision.com/ver10/XMLSchema";

要素を取得します

 var elem = document.Element(ns + "Wireless");
 var elems = document.Descendants(ns + "ssid");
于 2012-09-07T08:28:43.323 に答える