Linq从列表中选择一个属性

时间:2016-07-08 09:39:55

标签: c# linq

我有一个包含一些字符串属性的列表Vehicles。 我有另一个列表filterList,用户可以在其中选择他想要的属性。 在filterValues中应该是用户选择的属性的值。 我该怎么做?

到目前为止,我一直在考虑这样的事情:

var filterValues = =new List<string>();
foreach(var filter in filterList)
{
    filterValues = vehicles.Select(x=>x. + filter).ToList();
}

但在此之后,filterValues中的所有项目都包含x.filter。 谢谢!

1 个答案:

答案 0 :(得分:1)

我认为这将是你的车辆类

public class Vehicle 
{
    public string Foo {set; get;}
    public string Bar {set; get;}
}


var filterValues = new List<string>();
vehicles.Select(x => filterValues.Any(f => f.Contains(x.Foo) || f.Contains(x.Bar))
                     .ToList();