Los*_*der 7 c# xelement xmldocument selectnodes
我正在考虑这样的方法.如果这实际上可以这样工作,请告诉我:对于示例XML:
<Root>
<Node>
<SubEl1>abc</SubEl1>
<SubEl2>def</SubEl2>
<SubEl3>123</SubEl3>
<SubEl4>456</SubEl4>
</Node>
</Root>
Run Code Online (Sandbox Code Playgroud)
想要进入<Node>,循环检查节点/元素名称并获取它的值.像这样的东西,比如名字'SubEl1'对task1使用'abc',看到元素名称是'SubEl2'我做task2.必须检查所有子元素!
示例(不工作代码):
//looping through 'Node' children
switch(SubElName for 'Node element)
{
case : 'SubEl1'
//Do Task1 using the SubEl1's value/TextName ...
case: 'SubEl2'
//Task2 ...
...
case: default //Do default task.....
}
//end loop
Run Code Online (Sandbox Code Playgroud)
如果你能想到任何其他方法(XElement,XmlDocument,SelectNodes()等,那也将受到赞赏!
Tim*_*vis 11
对于此任务,您只需要创建节点名称和节点值的列表/字典,然后您可以在交换机中使用它.
var list = from x in XElement.Load(**yourxmlfile**).Element("Node").Elements()
select new
{
Name = x.Name,
Value = (string)x
};
Run Code Online (Sandbox Code Playgroud)
现在您有一个名称,值对的列表,您可以简单地传递给您的switch方法.