-4

我有两个类型的列表,IEnumerable <SelectListItem>我需要IEnumerable <SelectListItem>使用第二个列表中不存在的第一个列表的元素创建一个新列表。我怎样才能做到这一点?

我试图用 a 来做,Except()但没有结果......

示例代码:

IEnumerable<SelectListItem> SelectListItemA = ....;
IEnumerable<SelectListItem> SelectListItemB = ....;
IEnumerable<SelectListItem> Except = SelectListItemA.Except(SelectListItemB);
4

1 回答 1

1

也许是这样的:

var items1 = new List<SelectListItem>();
var items2 = new List<SelectListItem>();
//[.. populate lists here ..]
var onlyInFirst = items1.RemoveAll(item1 => items2.Any(item2 => item1.Value == item2.Value));

Except需要它EqualsGetHashCode在遍历的类中实现。

于 2012-11-13T13:36:39.783 回答