我正在寻找一种在不指定 XPATH 或 XQUERY 表达式的情况下通过 XML 文档进行递归的好方法。只是从根节点开始。我需要抓住节点的元素和文本。
类似于:
private void RecurseXml(XmlNode root)
{
if (root is XmlElement)
{
Console.WriteLine(root.Name);
if (root.HasChildNodes)
RecurseXmlDocument(root.FirstChild);
if (root.NextSibling != null)
RecurseXmlDocument(root.NextSibling);
}
else if (root is XmlText)
{
string text = ((XmlText)root).Value;
Console.WriteLine(text);
}
递归过程确定它们是否是孩子与使用xpath的地方。我发布的代码的问题是将元素的文本捆绑在一起。所以我可以在我拥有的另一个进程中匹配元素名称并将其设置为等于文本的值。所以我可以使用约定来进行映射。