如何删除IEnumerable <MyClass>中的项目?

4th*_*ace 2 .net c# lambda

如何从IEnumerable中删除符合特定条件的项目?

RemoveAll()不适用.

Dan*_*zey 11

你不能; IEnumerable作为界面不支持删除.

如果您的IEnumerable实例实际上是支持删除的类型(例如List<T>),则可以转换为该类型并使用该Remove方法.

或者,您可以IEnumerable根据您的条件将项目复制到不同的项目,或者您可以使用延迟评估的查询(例如使用Linq的.Where)来过滤您IEnumerable的动态.但是,这些都不会影响您的原始容器.