1
私はこのは、XPathとXmlementを解析することはできません正しく
XmlElement root = proxy.CallWebservice();
XmlNodeList nodeList;
nodeList = root.SelectNodes("/Application/Applicants");
foreach (XmlNode applicants in nodeList)
{
Console.WriteLine(applicants.InnerXml);
}
問題のようにコードを持って、私のクライアント側 の
<Application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Type>C</Type>
<AppDate>2012-05-01T00:00:00</AppDate>
<Applicants>
<ID>1234</ID>
</Applicants>
<Applicants>
<ID>0</ID>
</Applicants>
<Status>O</Status>
</Application>
下のようなxmlementを返すWebサービスを持っている:私は得ることができません何かを出力する。
しかし
私はこの
File.WriteAllText(@"d:\output.xml", root.OuterXml.ToString());
XmlDocument doc = new XmlDocument();
doc.Load(@"d:\output.xml");
XmlElement root = doc.DocumentElement;
XmlNodeList nodeList;
nodeList = root.SelectNodes("/Application/Applicants");
foreach (XmlNode title in nodeList)
{
Console.WriteLine(title.InnerXml);
}
をすればそれが動作、私はちょうどノードを読み取るために、ファイルへの書き込みを持っている必要はありません。私は間違って何をしていますか?
ました。 –
XPathの問題は、通常、名前空間に関する問題です。名前空間が「オフ」の場合は機能しますが、「オン」の場合はxmlプロセッサーに名前空間を登録するまで失敗します。 「xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"」属性を削除してみることができますか。これは手がかりを与えます。 – Julian
私は推測しますが、Proxy.WebServiceとDocument.DocumentElementが同じノードではないと思われます。 –