已知xml其中一个节点的以下信息:1. 节点值
2. XmlNode对象。请问怎么获取该节点的xpath绝对路径呢?比如路径:/Bookstore/Book[2]/Name

解决方案 »

  1.   

    XPathDocument doc = new XPathDocument("???.xml");
    XPathNavigator nav = doc.CreateNavigator();
    XPathNodeIterator iter = av.Select("/Bookstore/Book[@Name='bookName']");
      

  2.   

    知道path可以得到node
    但是知道node很难得到path吧
    一个node可以通过多个path得到
    没有唯一性的如果你只想得到节点名称
    做个递归就可以了XmlNode parent = node.ParentNode;
    while(parent != null)
    {
        Console.WriteLine(parent.Name);
        //还可以得到父节点的属性
        parent = node.ParentNode;
    }