gpt4 book ai didi

c# - C# 中的 LINQ。检查一个列表是否包含另一个列表中的元素

转载 作者:行者123 更新时间:2023-11-30 13:30:46 26 4
gpt4 key购买 nike

<分区>

我有两个列表(例如):

var NewIDs = new List<string>();
NewIDs.AddRange(...some values...);

var OldIDs = new List<some type>()
OldIDs.AddRange(...some values...);

我需要返回 OldIDs 列表,它只包含第一个的值。我这样做:

var newList = OldIDs.Where(p => p.Id.All(x => NewIDs.Contains(x.ToString()))).ToList();

但它返回 count=0;

编辑 1: NewIDs 它只是字符串列表,而 OldIDs 它是某种结构,具有 Id 属性

编辑 2: 它以这种方式工作:

var newList = new List<MyType>();
foreach (var res in NewIDs)
{
newList.AddRange(OldIDs.Where(a => a.Id == res));
}

我需要在没有foreach的情况下重写它,只使用LINQ

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com