至于你使用Contains
,我说你可以试图让
- 项,其中
city
从mystring
- 条目的任何城市相匹配,这
city
从0匹配所有城市
所以,有(我简化searchModel
类,已经省略property
):
List<searchModel> obj = new List<searchModel>
{
new searchModel{city = "city1"},
new searchModel{city = "city2"},
new searchModel{city = "city3"}
};
var mystring = "city1,city2";
var subs = mystring.Split(',').ToList(); //let it be also List<T>
我们可以这样做:
//the 1st option
var orFilter = obj.Where(o => subs.Any(s => o.city.ToLower().Contains(s)))
.ToList();
//the 2nd option
var andFilter = obj.Where(o => subs.TrueForAll(s => o.city.ToLower().Contains(s)))
.ToList();
然后做一个简单的检查
foreach (var o in andFilter)
{
Console.WriteLine(o.city);
}
我会说OP是平等的al到选项2,而不是选项1.
是否有您的'searchModel'类中的属性名为'property'?请发布searchModel类的代码。 –
你想要做什么? –
预期结果是什么,目前的结果是什么? –