Query XML document by attribute
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.Linq; using System.Reflection; using System.Xml.Linq; class Program { static void Main(string[] args) { XElement xml = XElement.Load("Employee.xml"); var query = from s in xml.Elements("salary").Elements("idperson") where (int)s.Attribute("year") == 2004 select s; foreach (var record in query) { Console.WriteLine("Amount: {0}", (string)record.Attribute("salaryyear")); } } }