如何使用linq在对象列表中进行搜索

时间:2014-02-25 16:44:06

标签: c# linq

我是linq的新手,我想在列表中使用它而不使用foreach。如何从房屋ha游泳池的List<House>对象列表中返回一个列表。

Class Houses
{
  Int Id,
  bool HasSwimmingPool
...
}

4 个答案:

答案 0 :(得分:3)

您需要的只是Where方法,它根据给定的谓词过滤集合:

var results = source.Where(x => x.HasSwimmingPool).ToList();

其他ToList()来电会使结果List<House>代替IEnumerable<House>

您可以使用基于语法的查询来实现相同的目标:

var results = (from h in source
               where h.HasSwimmingPool
               select h).ToList();

答案 1 :(得分:1)

这很简单:

var yourCollection = new List<Houses>();
var housesThatHasASwimmingPool = yourCollection.Where(s => s.HasSwimmingPool);

答案 2 :(得分:1)

试试这个:

 var swimmngHomes = listOfHouses.
     Where( h => h.HasSwimmingPool == true);

答案 3 :(得分:0)

List<Houses> housesWithPools = oldHouses.Where(x => x.HasSwimmingPool== true);