我有一个类似这样的嵌套 xml。
< H>
< FP >
< Name="FP1"/>
< R >
< Name = "R1"/>
< O>
< Name="O1"/>
< /O>
< O>
< Name="O2"/>
< /O>
< /R>
< R>
< Name = "R2"/>
< O>
< Name="O4"/>
< /O>
< /R>
< /FP>
< FP>
< Name="FP2" />
< R>
< Name = "R3"/>
< O>
< Name="O5"/>
< /O>
< O>
< Name="O6"/>
< /O>
< /R>
< /FP>
< R>
< Name="R4"/>
< O>
< Name="O7"/>
< /O>
< O>
< Name="O8"/>
< /O>
< /R>
< R>
< Name="R5"/>
< O >
< Name="O9"/>
< /O>
< /R>
< /H>
我正在使用反序列化来读取这个 xml。
这是我的反序列化类:
[XmlRoot("H")]
public class ReplyH
{
[XmlElement("FP")]
public List<ReplyFP> FPs;
[XmlElement("R")]
public List<ReplyR> Rs;
}
public class ReplyFP
{
[XmlElement("Name")]
public string Name;
[XmlElement("R")]
public List<ReplyR> Rs = new List<ReplyR>();
}
public class ReplyR
{
[XmlElement("Name")]
public string Name;
[XmlElement("O")]
public List<ReplyO> Os = new List<ReplyO>();
}
public class ReplyO
{
[XmlElement("Name")]
public string Name;
}
我需要遍历 O 标签。
类似于 foreach(var O in H.FP.RO) 和 foreach(var O in HRO)
1)。我需要找到<O>
上面示例中的最后一个标签 < O> < Name = "O9" /> < /O> .
2). I also need to get the parent
R Name and
FP Name if exists for a particular
O`
我怎样才能使用 linq / lambda 表达式得到这个?
谢谢