我在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个。
提前感谢您的帮助。
答案 0 :(得分:0)
这样的东西?如果我正确理解你的问题。
public void foo(XmlNode node)
{
if (node.HasChildNodes)
{
for (int i = 0; i < node.ChildNodes.Count; i++)
{
foo(node.ChildNodes[i]);
}
}
else
{
//read value
}
}