温馨提示×

c# xpath复杂查询

c#
小樊
82
2024-09-19 19:59:27
栏目: 编程语言

在C#中,使用System.Xml.XPath命名空间可以执行XPath查询。对于复杂的XPath查询,可以使用通配符(*)和谓词(例如@attribute='value')来筛选元素和属性。

以下是一个C#示例,展示了如何使用XPath查询一个包含多个元素的XML文档:

using System;
using System.Xml;

class Program
{
    static void Main()
    {
        string xml = @"
            <books>
                <book id='1'>
                    <title>Book 1</title>
                    <author>Author 1</author>
                </book>
                <book id='2'>
                    <title>Book 2</title>
                    <author>Author 2</author>
                </book>
                <book id='3'>
                    <title>Book 3</title>
                    <author>Author 3</author>
                </book>
            </books>";

        XmlDocument doc = new XmlDocument();
        doc.LoadXml(xml);

        string xpathQuery = "//book[@id='2']"; // 查询id属性值为'2'的book元素
        XmlNodeList nodes = doc.SelectNodes(xpathQuery);

        if (nodes.Count > 0)
        {
            Console.WriteLine("Found a book with id='2'");
        }
        else
        {
            Console.WriteLine("No book found with id='2'");
        }
    }
}

在这个示例中,我们使用XPath查询`//book[@id=’

0