c# - 使用 Func<Inner,Outer,bool> 的 Linq GroupJoin?

标签 c# linq join .net-4.0

我有 IEnumerable<A>IEnumerable<B> 我想根据是否A.Test(B)加入群组返回 true .

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

我在这里遗漏了什么吗?

最佳答案

你是对的,GroupJoin 不能真正处理这种情况。 这个变通办法有用吗?

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

关于c# - 使用 Func<Inner,Outer,bool> 的 Linq GroupJoin?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3924058/

相关文章:

c# - Asp.Net Core从appsettings.json获取json数组

sql-server - 从 SQL Server 表中获取随机行数

sql - 如何将此 SQL 查询转换为 LINQ 或 Lambda 表达式?

R:用另一个数据帧更新数据帧

php - MySQL从多个表中选择

ruby-on-rails - Rails 3. 获取相关模型的属性

c# - 检查日期是否在范围内的最简洁方法(可空日期)

c# - 隐藏开源项目的私有(private)细节

c# - 集中式数据库 : multiple consumers

LINQ to Entities 三表连接查询