【发布时间】:2017-10-30 07:16:22
【问题描述】:
我正在尝试从 xml 中读取一些数据。下面是我的xml结构。
<Configuration>
<node1></node1>
<unity
xmlns=xmlns="http://schemas.microsoft.com/practices/2010/unity">
<namesapce name="somename"/> . . .
</unity>
</Configuration>
我尝试使用下面的 xpath 读取节点“unity”
var nodelist=doc.SelectNodes("/configuration/unity[@xmlns='http://schemas.microsoft.com/practices/2010/unity']");
但它返回 null。我的代码有什么问题?
【问题讨论】:
-
你的 XML 坏了,你有
xmlns=xmlns="..."而应该只有一个xmlns="..."。假设这是问题中的拼写错误,xmlns="http://schemas.microsoft.com/practices/2010/unity"是XML namespace declaration,因此您需要按照How do I select nodes that use a default namespace? 和Using Xpath With Default Namespace in C# 中的说明进行操作。