且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

我该怎么做两SelectListItem列表之间使用除()

更新时间:2022-12-28 16:14:09

也许是这样的:

  VAR items1 =新的List< SelectListItem>();
VAR items2 =新的List< SelectListItem>();
// [..这里填充列表..]
VAR onlyInFirst = items1.RemoveAll(ITEM1 => items2.Any(ITEM2 => item1.Value == item2.Value));

除了要求等于 GetHash code 在遍历类实现的。

I have two list of type IEnumerable <SelectListItem> I need to create a new IEnumerable <SelectListItem> with the elements of the first list that do not exist in the second list. how can i do this?

I tried to do it with a Except() but did not result...

Example code:

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

Maybe something like:

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 requires that Equals and GetHashCode is implemented in the traversed class.