我想为groupjoin子句构建动态Linq to Sql查询,其中groupjoin将包含多个用于连接的动态列。
我已经查看了以下关于左连接的技巧,但它没有多列加入的功能: How do I do a left outer join with Dynamic Linq?
以下是我需要动态实现的编译时查询:
`var source = lParent.GroupJoin(lChild,
p => new{ p.PID,p.CategoryId (These are dynamic columns)}
c => new{ c.PID,c.CategoryId (These are dynamic columns)}
(p, g) => new { Parent = p, Childs= g })
.SelectMany( p => p.Childs.DefaultIfEmpty(),
(p,g) => new { Parent=p.Parent, Childs=g});`
三江源。
Ashutosh说