好的,所以我有两个不同类型的项目列表。
var whales = new List<Whale>();
var crabs = new List<Crab>();
所以他们都有 id 属性。因此,保存列表中的对象的 ID 为:
鲸鱼:1、3、4、5 螃蟹:1、2、3、4
好的,我有一个问题:
var matchedPairs = from c in crabs
from w in whales
where c.Id = w.Id
select new { crab = c, whale = w };
这样可以很好地匹配。我遇到麻烦的地方是我想获得一份没有匹配鲸鱼的螃蟹 list 。 Crab Id = 2。然后我想获取没有匹配螃蟹的鲸鱼,即 Whale Id = 5。
谁能告诉我如何编写这些查询?
最佳答案
如果您只想选择螃蟹。
var result = crabs.Where(c => whales.All(w => w.Id != c.Id));
关于c# - 如何从 ID 不匹配的两个列表中选择项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11751858/