J'essaie d'extraire une liste de page à partir d'une liste de types de types, où l'ID de page correspond à la valeur fournie.
Un livre contient une liste de pages. Chaque page a une carte d'identité. P>
Je n'arrive tout simplement pas à bien réussir. Toute aide grandement appréciée. P>
4 Réponses :
Je pense que vous êtes après Cependant, s'il ne peut y avoir qu'une seule page dans un livre avec le Donné SelectMany code> . Ceci est pour s'il y ait plusieurs pages dans un livre avec le
pageIID donné code>:
pageID code>, vous souhaiterez peut-être: p>
var pages = hooks.SelectMany(book => book.Pages).Where(x => x.PageId == pageId);
List<Book> books = GetBooks(); IEnumerable<Page> pages = books.SelectMany(x => x.Pages.Where(y => y.PageId == pageId)); This should give you a Enumeration of the pages with the given id. You need to add .ToList() if you want a list instead.
Essayez SELECTMANY CODE>:
Page page = books.SelectMany(x => x.Pages).Where(x => x.PageId == pageId).FirstOrDefault();
et la version LINQ de cette requête est la suivante: qui est agréable parce que vous obtenez le comportement code> SELECTMANY CODE> en foring-down avec de code> clauses. p> p>
Vous voulez qu'il retourne
ienumerable code>? Pouvez-vous avoir plusieurs pages avec le même ID?