我有IEnumerable<A>
和IEnumerable<B>
我想根据A.Test(B)
是否返回true
进行分组加入。
密钥选择器函数似乎没有执行此操作,因为密钥选择器需要返回相同类型的密钥,以便可以检查它们的相等性。
我在这里想念什么吗?
最佳答案
没错,GroupJoin
不能真正处理这种情况。
这个解决方法会做吗?
var res = from aInstance in aSequence
select new {
A = aInstance,
MatchingBs = bSequence.Where(bInstance => aInstance.Test(bInstance))
};