给定一个XElement,如何在给定XPath的情况下检索对另一个相对XElement/Xattribute的引用?
问题描述:
考虑下面的XML:给定一个XElement,如何在给定XPath的情况下检索对另一个相对XElement/Xattribute的引用?
<SomeXML>
<Element1>
<Element2 Attribute3="Value4" />
</Element1
</SomeXML>
...和的XElement参考 'SomeElement' 和一个XPath '部件1 /元素2/@ Attribute3'
如何检索参考Attribute3如此我可以改变它的价值(使用Xpath)?
XPath是一个检索设置,因此是我唯一的方法来定位有问题的节点。
答
添加using System.Xml.XPath
到你需要做到这一点的代码文件。
然后你可以使用这样的代码: -
var attrib3 = someElement.XPathEvaluate("Element1/Element2/@Attribute3") as XAttribute;
if (attrib3 != null)
attrib3.Value = "new value";
答
您的XElement使用System.Xml.XPath
和扩展方法XPathSelectElement
+0
也是一个伟大的答案。这只是一个耻辱,我不能主动分裂点。 – 2010-05-18 14:10:31
今天你是我的个人英雄:D优秀的东西 – 2010-05-18 14:10:05