我有一个LinkedList,其中Entry有一个名为id的成员。我想从id匹配搜索值的列表中删除Entry。最好的方法是什么?我不想使用Remove(),因为Entry.Equals会比较其他成员,我只想匹配id。我希望能做到这样的事情:
entries.RemoveWhereTrue(e => e.id == searchId);
编辑:有人可以为我重新打开这个问题吗?这不是重复 - 它应该是重复的问题是关于List类。 List.RemoveAll将不起作用 - 这是List类的一部分。
答案 0 :(得分:3)
list.Remove(list.First(e => e.id == searchId));
答案 1 :(得分:2)
这是一个简单的解决方案:
list.Remove(list.First((node) => node.id == searchId));
答案 2 :(得分:1)
只需使用Where扩展方法即可。您将获得一份新名单(IIRC)。