I\'ve got an object of type A
which consists of a list of objects of type B
:
class A { list Alist;}
class B { string C; st
I too would have had a similar answer, my only modification was to add the where clause to avoid having empty strings (where C is empty):
listOfA.SelectMany( a => a.AList, (a, b) => b.C ).Where( c => c.Length > 0 );
ybo's answer would have been my first response too. The query expression equivalent of this is:
var query = from a in computeAList()
from b in a.Alist
select b.C;
For the sake of completeness, the other answers in this thread are variations on the same theme.
From ybo (the exact same query, expressed as dot notation):
var query = listOfA.SelectMany(a => a.Alist, (a, b) => b.C);
From Ray Hayes (including the Where clause; I've reformatted slightly):
var query = listOfA.SelectMany(a => a.AList, (a, b) => b.C)
.Where(c => c.Length > 0);