如何读取嵌套SOAP响应中的最低级别节点

本文关键字:节点 响应 SOAP 何读取 读取 嵌套 | 更新日期: 2023-09-27 17:58:04

我在SOAP响应中有一个嵌套的循环,我想从循环中读取最低级别的值。我如何用C#编写递归逻辑来做同样的事情?下面是我的示例SOAP请求

<hierarchy>
    <company company_id="ABC" name="ABC">
        <company company_id="DEF" name="DEF">
            <company company_id="1234" name="1234">
                <company company_id="5678" name="5678">
                    <company company_id="1000" name="1000">
                    </company>
                </company>
            </company>
        </company>
    </company>
</hierarchy>

我想写一个逻辑,类似于若公司并没有更多的子节点,然后读取那个值。仅供参考,这个嵌套循环是动态的,这意味着有些SOAP响应可以有5个嵌套公司,有些可以有3个。

提前感谢您的帮助。

如何读取嵌套SOAP响应中的最低级别节点

类似的东西?如果我正确理解你的问题。

public void foo(XmlNode node)
{
    if (node.HasChildNodes)
    {
        for (int i = 0; i < node.ChildNodes.Count; i++)
        {
            foo(node.ChildNodes[i]);
        }
    }
    else
    {
        //read value
    }
}