LINQ比较两个列表 - 添加新列表,删除旧列表,保留相同的列表

Gag*_*age 11 c# linq list

我有一个对象A的两个列表(L1,L2),L1用于在更改之前存储对象列表(多对多关系).L2是改变后的关系.我需要保留常用元素,但添加新元素并删除不在L2中的元素.我想知道是否有一个内衬我可以用LINQ来完成这个.如果您需要更多信息,请告诉我.

提前致谢

Tho*_*que 17

如果我理解你的要求,这应该有效:

L1.AddRange(L2.Except(L1));
L1.RemoveAll(item => !L2.Contains(item));
Run Code Online (Sandbox Code Playgroud)

不是单行,但足够接近......