如何创建动态INNER JOIN多个Colums

时间:2016-01-20 13:13:25

标签: linq

我想为内连接子句构建动态Linq to Sql查询,其中内连接将包含多个动态列以进行连接。

以下是我需要动态实现的编译时查询:

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 })

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用以下查询进行内部联接。 使用this link中的GroupJoin代码。

source.AsQueryable()
.GroupJoin(destination.AsQueryable(),
           outer.ToString(),
           inner.ToString(),
           "new (outer as sources, group as destinations)")
.SelectMany("destinations", "new(outer as sources, inner as destinations)");