2

拥有:

IEnumerable<int> oldValues; // Example: [1, 2, 3, 4]
IEnumerable<int> newValues; // Example: [3, 4, 5, 6]

需要:

IEnumerable<int> removedValues; // Example: [1, 2]
IEnumerable<int> addedValues;   // Example: [5, 6]

有什么好的 LINQ 解决方案的想法吗?

4

1 回答 1

7

您需要Enumerable.Except - 此方法返回第一个序列中未出现在第二个序列中的那些元素。

IEnumerable<int> removedValued = oldValues.Except(newValues);
IEnumerable<int> addedValues = newValues.Except(oldValues);
于 2012-11-10T19:13:27.673 回答