我是 LINQ/XML 的新手。我刚刚了解到语言集成查询可用于解析 xml。我正在尝试解析以下 XML 结构,我需要帮助
====================================
<config>
<params>
<tp name="abc">yes</tp>
<tp name="aee">no</tp>
<tp name="bbc">no</tp>
<tp name="ccb">yes</tp>
</params>
<nits>
<tn name="kjh">
<min>44</min>
<max>98</max>
</tn>
<tn name="klm">
<min>55</min>
<max>88</max>
</tn>
<tn name="hhh">
<min>44</min>
<max>98</max>
</tn>
</nits>
<params>
<tp name="lml">no</tp>
<tp name="rre">yes</tp>
<tp name="rst">no</tp>
<tp name="wee">yes</tp>
</params>
<nits>
<tn name="adf">
<min>44</min>
<max>98</max>
</tn>
<tn name="ddd">
<min>42</min>
<max>92</max>
</tn>
<tn name="kjj">
<min>92</min>
<max>98</max>
</tn>
</nits>
</config>
====================================
需要输出:
我的目标是在文本文件或数据网格等中按类别将上述数据显示为键值对。
<Params>
abc : yes
aee : no
bbc : yes
...
...
...
...
<nits>
kjh: 44 , 98
klm: 55 , 88
...
...
kjj: 92 , 98
ddd: 42 , 92
...
到目前为止我写的代码是,
static void QueryTheData(XDocument doc)
{
try
{
var a = doc.Descendants("config").Elements("params");
var b = doc.Descendants("config").Elements("nits");
var c = doc.Elements("tp");
var d = doc.Elements("tn");
/* to do : parse the elements into key value pairs */
/* Need hint or help to proceed to get key value pairs from xml data
}
catch(Exception e)
{
....
}
}
还需要针对初学者的 LINQ/XML C# 的任何好的指针。
在此先感谢, ak