public Class Car
{
public string Name {get;set;}
public string Color {get;set;}
}
Car1 = new {"Ford", "White"}
Car2 = new {"Ford Fiesta", "Blue"}
Car3 = new {"Honda City", "Yellow"}
Car4 = new {"Honda", "White"}
var carObj = new List<Car>();
carObj.Add(Car1);
carObj.Add(Car2);
carObj.Add(Car3);
carObj.Add(Car4);
我需要根据汽车名称过滤输出,以便如果名称是存在的任何名称的子集,它将删除它们。基于条件的对象过滤器列表
输出:
Car2 = new {"Ford Fiesta", "Blue"}
Car3 = new {"Honda City", "Yellow"}
下面是我写要做到这一点,但它没有给我所需的输出。
// Remove duplicare records.
var carObjNEW = new List<Car>();
carObjNEW = carObj;
carObj.RemoveAll(a => carObjNEW.Any(b => a.Name.Contains(b.Name)));
任何关于如何解决这个问题的帮助。
你看过'.Distinct()'命令和'LINQ'吗? – ja72
'RemoveAll'不会修改输入,您必须重新分配carObj的结果。此外,由于每辆车都已经在比较列表中,因此输出将为空。 – orhtej2
独特只会做完全匹配,我需要的是一个子串匹配。 –