在使用Linq中的点语法时,我能否访问被跳过的“父级”SelectMany?
- 论坛
- 在使用Linq中的点语法时,我能否访问被跳过的“父级”SelectMany?
12 浏览
在使用Linq中的点语法时,我能否访问被跳过的“父级”SelectMany?
在查询语法中,我可以写成:
var greendoorsWithRooms = from room in house.rooms from door in room.doors where door.Color = green select new {d=door,r=room}
有没有一种方法可以用点语法实现同样的效果?
var greendoorsWithRooms = house.rooms.SelectMany(room=>room.Doors) .Where(door=>door.Color==green) .Select(door=>new{}
我正在教一些非程序员使用LINQPad来处理专有的对象模型,以免不得不为每个奇怪的情况创建GUI。如果他们不必学习查询语法,那将是有益的。目前,我已经提供了使用foreach解决此问题的代码片段,但是这个问题偶尔还是会出现。