ilookup - filter linq lookup based on values -
i filter linq lookup based on values:
the lookup:
ilookup<int, article> lookup
here's i've got far isn't working:
ilist<int> cityindexes = getcityindexesbynames(cities); lookup = lookup .where(p => p.any(x => cityindexes.contains((int)x.articlecity))) .selectmany(l => l) .tolookup(l => (int)l.articleparentindex, l => l);
just clarify: want articles city index contained in above city index list.
the problem code posted, you're getting articles same id article has matching city index. if unpack groups first, there's no problem.
ilist<int> cityindexes = getcityindexesbynames(cities); lookup = lookup .selectmany(g => g) .where(article => cityindexes.contains((int)article.articlecity))) .tolookup(article => (int)article.articleparentindex);
or
lookup = ( g in lookup article in g cityindexes.contains((int)article.articlecity))) select article ).tolookup(article => (int)article.articleparentindex);
Comments
Post a Comment