Complex LINQ to XML Query
-
Hello, I have been trying to come up with a set of records from an XML file based on a LINQ to XML query. this is the XML File. <Movies> <Movie Code="{45CA6849-7DD8-44D7-BA10-2A09227A6A3B}" Title="Il buono, il brutto, il cattivo." ReleaseDate="12/29/1967" Genre="Western" ForRent="True" Price="5"> <Plot>A bounty hunting scam joins two men in an uneasy alliance against a third in a race to find a fortune in gold buried in a remote cemetery.</Plot> <Directors> <Artist FirstName="Sergio" LastName="Leone" /> </Directors> <Cast> <Actor Role="Tuco"> <Artist FirstName="Eli" LastName="Wallach" /> </Actor> <Actor Role="Blondie"> <Artist FirstName="Clint" LastName="Eastwood" /> </Actor> <Actor Role="Sentenza/Angel Eyes"> <Artist FirstName="Lee" LastName="Van Cleef" /> </Actor> <Actor Role="Alcoholic Union Captain"> <Artist FirstName="Aldo" LastName="Giuffrè" /> </Actor> <Actor Role="Father Pablo Ramirez"> <Artist FirstName="Luigi" LastName="Pistilli" /> </Actor> <Actor Role="Maria"> <Artist FirstName="Rada" LastName="Rassimov" /> </Actor> <Actor Role="Storekeeper"> <Artist FirstName="Enzo" LastName="Petito" /> </Actor> <Actor Role="Mexican peon"> <Artist FirstName="Claudio" Las
-
Hello, I have been trying to come up with a set of records from an XML file based on a LINQ to XML query. this is the XML File. <Movies> <Movie Code="{45CA6849-7DD8-44D7-BA10-2A09227A6A3B}" Title="Il buono, il brutto, il cattivo." ReleaseDate="12/29/1967" Genre="Western" ForRent="True" Price="5"> <Plot>A bounty hunting scam joins two men in an uneasy alliance against a third in a race to find a fortune in gold buried in a remote cemetery.</Plot> <Directors> <Artist FirstName="Sergio" LastName="Leone" /> </Directors> <Cast> <Actor Role="Tuco"> <Artist FirstName="Eli" LastName="Wallach" /> </Actor> <Actor Role="Blondie"> <Artist FirstName="Clint" LastName="Eastwood" /> </Actor> <Actor Role="Sentenza/Angel Eyes"> <Artist FirstName="Lee" LastName="Van Cleef" /> </Actor> <Actor Role="Alcoholic Union Captain"> <Artist FirstName="Aldo" LastName="Giuffrè" /> </Actor> <Actor Role="Father Pablo Ramirez"> <Artist FirstName="Luigi" LastName="Pistilli" /> </Actor> <Actor Role="Maria"> <Artist FirstName="Rada" LastName="Rassimov" /> </Actor> <Actor Role="Storekeeper"> <Artist FirstName="Enzo" LastName="Petito" /> </Actor> <Actor Role="Mexican peon"> <Artist FirstName="Claudio" Las
I found the solution. :) movies = from movie in doc.Descendants("Movie") where movie.Attribute("Title").Value.Contains(title) && movie.Element("Directors").Elements("Artist").Any(dfn => dfn.Attribute("FirstName").Value.Contains(director.FirstName)) && movie.Element("Directors").Elements("Artist").Any(dln => dln.Attribute("LastName").Value.Contains(director.LastName)) && movie.Element("Cast").Elements("Actor").Any(acf => acf.Element("Artist").Attribute("FirstName").Value.Contains(actor.FirstName)) && movie.Element("Cast").Elements("Actor").Any(acl => acl.Element("Artist").Attribute("LastName").Value.Contains(actor.LastName)) select movie; Juan Mejia