我正在用 C# 编写代码,我需要根据条件找到一个子节点并替换它的值。
有什么可用的:
- XML 节点
- placeholder = 表示占位符的字符串
- replacementString = 占位符字符串需要替换为这个字符串
什么是要做 :
在 xml 节点中查找具有 text = placeholder 的子节点或具有 value = placeholder 字符串的任何属性的节点
如果是节点,则分配内部文本 = replacementString。if属性,用replacementString替换属性值
到目前为止的进展:
我能够找到一个带有占位符的节点作为带有 xpath 的文本
descendant::*[text()='placeHolder']
但是现在我坚持添加占位符也可以作为属性值存在的规则。
限制:
它需要在 XPath 中完成,才能在 SelectSingleNode 中使用。可以确保只有一个节点/属性具有给定的占位符
选择:
我知道我可以获取 xmlnode 的字符串,执行字符串替换,在 DOM 中加载它并获取文档元素。但我不想仅仅为了字符串替换而在内存中创建另一个 DOM。
已经谢谢了