以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML源码及示例(仅原创和转载) 』  (http://bbs.xml.org.cn/list.asp?boardid=32)
----  遍历所有子节点问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=32&rootid=&id=60685)


--  作者:yxli
--  发布时间:3/31/2008 9:41:00 PM

--  遍历所有子节点问题
有一xml文档如下:
<?xml version="1.0" ?>
<!--
WSDL description of the Google Web APIs.
     The Google Web APIs are in beta release. All interfaces are subject to change as we refine and extend our APIs. Please see the terms of use for more information.
? -->
<!-- Revision 2002-08-16  -->
<definitions name="GoogleSearch" targetNamespace="urn:GoogleSearch">

<portType name="GoogleSearchPort">
<operation name="doGetCachedPage">
<input message="typens:doGetCachedPage" />
<output message="typens:doGetCachedPageResponse" />
</operation>

<operation name="doSpellingSuggestion">
<input message="typens:doSpellingSuggestion" />
<output message="typens:doSpellingSuggestionResponse" />
</operation>

<operation name="doGoogleSearch">
<input message="typens:doGoogleSearch" />
<output message="typens:doGoogleSearchResponse" />
</operation>
</portType>

</definitions>

我用以下代码提取porttype的所有operation元素,并打印operation的name,但上面都没有打印出来,是怎么回事了??请高手指点!!!

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(@"E:\experiment\e4\googlesimple.xml");//导入物理路径下的xml文档

XmlNodeList nodeList = xmlDoc.SelectNodes("/definitions/portType");//提取所有operation项

Console.WriteLine("tiqu");

string operationname;
foreach (XmlNode op in nodeList)//遍历portType的所有子节点
{
    XmlElement xe = (XmlElement)op;//将子节点类型转换为XmlElement类型     
    operationname = xe.GetAttribute("name");
    Console.WriteLine(operationname);
}


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
1,585.938ms