c# - How do you create nested groups with linq via lambda/method expressions -
is possible? example, how rewrite working code below lambda expression?
public void querynestedgroups() { var querynestedgroups = student in students group student student.year newgroup1 newgroup2 in (from student in newgroup1 group student student.lastname) group newgroup2 newgroup1.key; } // 3 nested foreach loops required iterate // on elements of grouped group. hover mouse // cursor on iteration variables see actual type. foreach (var outergroup in querynestedgroups) { console.writeline("dataclass.student level = {0}", outergroup.key); foreach (var innergroup in outergroup) { console.writeline("\tnames begin with: {0}", innergroup.key); foreach (var innergroupelement in innergroup) { console.writeline("\t\t{0} {1}", innergroupelement.lastname, innergroupelement.firstname); } } }
var names = myclass1list .selectmany(c1 => c1.class2list.where(c2 => c2.name == "something")) .selectmany(c2 => c2.class3list.select(c3 => c3.name)); var names = myclass1list .selectmany(c1 => c1.class2list .where(c2 => c2.name == "something") .selectmany(c2 => c2.class3list .select(c3 => c3.name)));
see more: linq on list lot of nested list
Comments
Post a Comment