为什么XML属性在.NET中没有“父”?
所以,我正在编写一个简单的函数来从
XML文档中删除
XML节点.据我所知,实现这一目标的最简单方法是:
>获取将要删除的节点的引用(ChildNode) 现在,如果子节点是XmlElement,这可以很好用,但如果子节点是XML属性怎么办?根据X000Node.ParentNode的MSDN documentation,该属性将不返回任何内容,因为“[attributes]没有父项”. 属性肯定有“父母”,不是吗?必须将属性分配给XML元素,因此在我看来,XML元素将是属性的父元素. 有人可以澄清我的误解,或澄清为什么.NET Framework不会将属性视为拥有父母吗? 解决方法
您可以使用
XmlAttribute.OwnerElement 获取属性的所有者.
您的程序必须修改为以下内容: >获取将要删除的节点的引用(ChildNode). 因此,基本上你必须给予属性特殊处理,反映它们实际上不是父子层次结构的一部分,而是 – 元素 – 是XML元素的一部分. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |