0

我在 EF 中有RoomBed类,每个类Room都有一些Bed(s)。我有一个从 EF 检索到Collection的s ;我使用此代码访问s( )中的所有s :RoomcontextBedCollectionRoommyRooms

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);
     }

在性能上有没有更好的方法来做到这一点?

4

1 回答 1

1

我怀疑你只是想要:

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

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

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

于 2013-07-13T09:31:28.310 回答