怎么样读取有命名空间的xml文档的节点

yunfeng007 2006-03-17 09:09:24
问个问题啊,怎么样读取有命名空间的xml文档的节点呢?例如下面:

<?xml version="1.0" ?>
<order xmlns="http://tempuri.org/myUSordersnamespace">
<orderID>DB09FEC6-9C9A-445d-A0A9-216E4F53FF3D</orderID>
.........
我怎么才能读orderID的值呢?下面这段c#代码读取有问题:
---------------------------------------------------------------------------------------------------------
// 创建 XmlNamespaceManager 并为该文档添加命名空间。
XmlNamespaceManager nsmanager = new XmlNamespaceManager(myXmlDocument.NameTable);

// 设置默认命名空间,第一个参数为空。
nsmanager.AddNamespace(String.Empty, "http://tempuri.org/myUSordersnamespace");

//XmlNodeList nodelist = myXmlDocument.SelectNodes("//orderID", nsmanager);
XmlNode node = myXmlDocument.SelectSingleNode("// orderID",nsmanager);
------------------------------------------------------------------------------------------------------------
不管是用SelectNodes还是用SelectSingleNode都取不到。但将命名空间去掉就没问题。不知道为什么阿?
...全文
89 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yunfeng007 2006-03-17
  • 打赏
  • 举报
回复
tks
孟子E章 2006-03-17
  • 打赏
  • 举报
回复
nsmanager.AddNamespace("XX", "http://tempuri.org/myUSordersnamespace");

//XmlNodeList nodelist = myXmlDocument.SelectNodes("//XX:orderID", nsmanager);
XmlNode node = myXmlDocument.SelectSingleNode("//XX:orderID",nsmanager);
即可

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧