到达Collection,它的每个项目都是Collection

时间:2013-07-13 09:26:37

标签: c# performance

我在EF中有RoomBed个类,每个Room都有Bed个。{我有CollectionRoom我从EF context检索到的;我使用此代码覆盖Bed Collection s Room}中的所有myRooms

IEnumerable<Room> myRooms=...
IEnumerable<Bed> bedsInMyRoom=context.Beds.AsEnumerable();
foreach (IEnumerable<Bed> beds in myRooms.Beds)
     {
       if(beds!=null && beds.Any())
          bedsInMyRoom=bedsInMyRoom.Concat(beds);
     }

有没有更好的表现方式呢?

1 个答案:

答案 0 :(得分:1)

我怀疑你只是想要:

var beds = rooms.SelectMany(room => room.Beds);

(假设Beds中有Room个属性。您没有在原始代码段中使用它。)

如果房间没有床的详细信息,可能需要其他信息 - 请告诉我们。