LINQ RemoveAll属性不起作用

IEn*_*ble 1 .net c# linq

我有一个Module对象和Module的属性Scenes.

场景是一个列表;

我想删除名称为old_filename(String)的所有场景.

我已经实现了下面的代码,但它不起作用,我想我可能会接近.

Module
    +Scenes = List<Scene>

Scene
    +Name (String)
Run Code Online (Sandbox Code Playgroud)

LINQ

    mod.Scenes.RemoveAll(x=> !mod.Scenes.Any(y=>y.Name== old_filename ));
Run Code Online (Sandbox Code Playgroud)

Jam*_*mes 5

你似乎在你的RemoveAll条件中查找相同的列表.假设您要删除任何Scene将其Name属性设置为的属性old_filename,您需要做的就是

 mod.Scenes.RemoveAll(x => x.Name == old_filename);
Run Code Online (Sandbox Code Playgroud)