2012-03-27 1 views
-3

Как я мог выбрать парковку с идентификатором 1 и только автомобили 200 года в этом паркеLinq To IEnumerable, где ребенок IEnumerable

var List<Parking> cityParkings = new List<Parking> 
{ 
    new Parking{ id = 1, carsInPark = new List<Car>{ new Car{ year = 2000}, new Car{ year = 2001} }}, 
    new Parking{ id = 2, carsInPark = new List<Car>{ new Car{ year = 2000}, new Car{ year = 1999} }}, 
    new Parking{ id = 3, carsInPark = new List<Car>{ new Car{ year = 2005}, new Car{ year = 2000} }}, 
} 

ожидаемый результат:

Parking { id = 1, carsInPark = List<Car>{ Car{ year = 2000} } } 

выберите существующий парковочный экземпляр идентификатора 1 с имеющимися экземплярами автомобилей, но только автомобили 2000-х годов.

Спасибо;)

+0

** Существующий экземпляр ** требуется, так как те, на самом деле NHibernate модели я хотел бы работать позже. – Alex

+0

хорошо. с другой стороны, его почти невозможно «получить одно и то же», но другое. – Alex

ответ

1

Попробуйте

cityParkings.Where(p => p.id = 1) 
    .Select(pp => new Parking(){id = pp.id, carsInPark = pp.carsInPark.Where(c=>c.year == 2000).ToList()});