C#:在xml标记内搜索值

hWo*_*rld 1 c#

我有一个问题,我如何搜索xml文件,并获得与我提供的文本匹配的节点.例如:

<bookstore>
 <book>
  <title>The Autobiography of Benjamin Franklin</title>
  <author>
   <first-name>Benjamin</first-name>
   <last-name>Franklin</last-name>
  </author>
  <price>8.99</price>
  </book>
</bookstore>
Run Code Online (Sandbox Code Playgroud)

我想搜索具有文本Benjamin的节点,并让程序存储XmlNode.我怎样才能做到这一点?有人可以提供这个例子的示例代码吗?

谢谢

LDA*_*ams 7

看看这个:http: //www.4guysfromrolla.com/articles/062310-1.aspx

Linq使用XML搜索非常容易.

这是一个例子:

        XDocument doc = XDocument.Load("C:\\yourxml.xml");
        XElement element = 
            doc.Element("bookstore")
                .Descendants("book")
                .Where(a => a.Element("author")
                    .Element("first-name").Value.Equals("Benjamin"))
                    .First();
Run Code Online (Sandbox Code Playgroud)