从列表<t> </t>中删除项目

时间:2010-03-03 05:38:47

标签: c#

List<object> A = new List<object>;
List<object> B = new List<object>;
List<object> C = new List<object>;

C.Add(item);
B.Add(C);
A.Add(B);

最后,我有List A而不是List B,List B包含List C. 我想从列表C中删除一个项目。

如何使用LINQ或lambda执行此操作?

2 个答案:

答案 0 :(得分:6)

LINQ不适用于集合的就地更改。使用老派Remove / RemoveAll

((List<object>)((List<object>)A[0])[0]).Remove(item);

((List<object>)((List<object>)A[0])[0]).RemoveAll(o => ((MyClass)o).Id == 5);

注意:此代码段中所需的强制转化数量表明您使用 List&lt; T&gt; 的方式可能不适合您的使用案例。我强烈建议您考虑指定比 object 更具体的泛型参数。

答案 1 :(得分:3)

查看RemoveRemoveAtRemoveRange

相关问题