从复杂对象列表中删除重复项

时间:2018-03-13 20:18:40

标签: c# list types

我有包含字典和名称(字符串)的对象。我想循环遍历这些对象,比较它们的字典和名称,以及是否有任何字典和字典。名称是完全匹配,我想删除所有重复项,然后返回一个没有字典和列表的对象列表。名字匹配。

这是我到目前为止所做的:

private void removeDuplicates(List<MyObject> objectList)
{
    List<Dictionary<string,string>> listOfObjDicts = new List<Dictionary<string,string>>();
    List<string> nameList = new List<string>();

     foreach(MyObject object in objectList)
     {
         nameList.Add(MyObject.name);
         listOfObjDicts.Add(MyObject.dict);
     }
     //compare name & dictionary against all other objects, then remove any duplicates from objectList.
}

可以安全地假设即使是遍历对象列表的foreach循环的这种结构也不是很好 - 因为我想返回一个对象列表,而不是一个名称列表和一个字典列表。我非常坚持这一点。有些人提到过LINQ,但我真的没有阅读/理解LINQ语法的经验或能力。

0 个答案:

没有答案