C#:解析具有相同标记的嵌套XML文件
XML文件:C#:解析具有相同标记的嵌套XML文件,c#,asp.net,xml,C#,Asp.net,Xml,XML文件: <?xml version="1.0" encoding="utf-8"?> <grid table="Declaration"> <primary_key>Some String</primary_key> <query> Some String </query> <grid table="GoodsItem"> <foreig
<?xml version="1.0" encoding="utf-8"?>
<grid table="Declaration">
<primary_key>Some String</primary_key>
<query>
Some String
</query>
<grid table="GoodsItem">
<foreign_key>Some String</foreign_key>
<primary_key>Some String</primary_key>
<query>
Some String
</query>
<grid table="GoodsItemGUID">
<foreign_key>Some String</foreign_key>
<foreign_key>Some String</foreign_key>
<primary_key>Some String</primary_key>
<query>
Some String
</query>
</grid>
</grid>
</grid>
您可以使用访问父节点。
您可以通过检查父节点的属性是否为网格来检查父节点是否为
if (bookNode.ParentNode != null && bookNode.ParentNode.Name == "grid")
{
XmlNode parent_grid = bookNode.ParentNode;
// do something with parent_grid
}
通过使用XML解析器?您能给出示例代码吗?我试过了,但我无法找出哪个“网格”元素有哪些父元素。不清楚您到底想做什么。向我们展示您尝试过的代码。在这个特定的示例中,此代码是有效的,但它不是通用的,例如,如果“网格”节点中有2个“网格”节点,那么对于我的代码,它将不会difference@Nikoloz14如果答案回答了你的问题,你应该接受。
if (bookNode.ParentNode != null && bookNode.ParentNode.Name == "grid")
{
XmlNode parent_grid = bookNode.ParentNode;
// do something with parent_grid
}