Этот запрос выберет этот узел. Вы пытаетесь получить набор узлов или только один? Возможно, вам придется самостоятельно вернуть узел книжного магазина, если вы хотите только подмножество узлов.
/bookstore/book[@category='COOKING']
как XmlDocument ...
var x = new XmlDocument();
x.Load("XmlFile1.xml");
var ns = x.SelectSingleNode("/bookstore/book[@category='COOKING']");
var res = ns.OuterXml;
как XDocument ...
var x = XDocument.Load("XmlFile1.xml");
var root = new XElement("bookstore",
from book in x.Element("bookstore").Elements("book")
where book.Attribute("category").Value == "COOKING"
select book
);
если вы просто хотите узел книги, вы можете сделать это вместо корневой версии выше
var book = x.Element("bookstore")
.Elements("book")
.Where(n => n.Attribute("category").Value == "COOKING")
.First();