首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

使用XPath查询XML文件时,多了xmlns属性后就查不到节点,这是咋回事

2013-08-09 
使用XPath查询XML文件时,多了xmlns属性后就查不到节点,这是怎么回事?Project xmlnshttp://schemas.micr

使用XPath查询XML文件时,多了xmlns属性后就查不到节点,这是怎么回事?
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
      <Item Id="001" />
      <Item Id="002" />
    </ItemGroup>
</Project>

查询时:
XmlNodeList list=doc.SelectNodes("/Project/ItemGroup/Item");
foreach(XmlNode node in list)
{
    string id=node.Attributes["Id"].Value;
}
取不到值的说。
于是我就将xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
这个属性去掉了,居然取到了。
但是XML文件是系统生成的。都有这个属性的嚎。
该怎么去值呢?简单点的方法呀。
这个xmlns属性是规范吗?
怎么会影响到查询呢?
求解!
本人分少,望谅解嚎。 XML XPath String
[解决办法]

可能需要提供 XAttribute 类型的参数来设置它 --〉 可能需要提供 XAttribute 类型的参数来设置XNamespace

热点排行