根据条件使用xpath从xml提取值

时间:2019-02-21 09:30:58

标签: c# xml xpath

我正在使用xpath解析并从xml文件中获取属性值。

这是我的xpath表达式

./result/object/group[@mode = 'invalid']

xpath生成

<group mode="invalid" name="3"/>
<group mode="invalid" name="4"/>

我想进一步解析和获取名称的详细信息,就像

name="3"
name="4"

或者只是

"3"
"4"

我不确定如何根据条件继续进行操作。

2 个答案:

答案 0 :(得分:0)

您可以使用GetAttribute方法获得“名称”。 例如,您的情况:

string name  = driver.FindElement(By.Xpath("./result/object/group[@mode = 'invalid']")).GetAttribute("name");

答案 1 :(得分:0)

我设法使用./result/object/group[@mode ='invalid'] / @ name完成操作以获取名称值。我使用以下方法获取名称的值

XmlNodeList xmlNodeList = xmlDoc.SelectNodes("./result/object/group[@mode = \'invalid\']/@name");

    foreach (XmlAttribute node in xmlNodeList)
    {
        Console.WriteLine(node.Value);
    }