C# Linq GroupJoin与Func<;内部、外部、bool>;?

C# Linq GroupJoin与Func<;内部、外部、bool>;?,c#,linq,join,.net-4.0,C#,Linq,Join,.net 4.0,我有 IEnumerable和IEnumerable 我想根据是否A进行分组加入。测试(B)返回true keyselector函数似乎没有这样做,因为keyselector需要返回相同类型的键,以便检查它们是否相等 有什么我遗漏的吗?你说得对,GroupJoin真的不能处理这个案子。 这个变通办法行吗 var res = from aInstance in aSequence select new { A = aInstanc

我有
IEnumerable
IEnumerable
我想根据是否
A进行分组加入。测试(B)
返回
true

keyselector函数似乎没有这样做,因为keyselector需要返回相同类型的键,以便检查它们是否相等


有什么我遗漏的吗?

你说得对,
GroupJoin
真的不能处理这个案子。 这个变通办法行吗

var res = from aInstance in aSequence 
          select new {
                       A = aInstance,
                       MatchingBs = bSequence.Where(bInstance => aInstance.Test(bInstance))
                     };

是的,会的。就所有实际目的而言,它都可以。通常我不会再看一眼。读了《面向现实世界的函数式编程》后,我有点担心。当谓词和resultselector混合在一起时,这本该死的书让我感到不自在。我不敢相信,我实际上是在用C#可视化一个currying func(谓词->结果选择器),只是为了激发我新发现的功能敏感性。不过,不严重。如果有什么不同的话,那自然是我自己的GroupJoin过载了。谢谢你的回复。