C#LINQ动态加入

时间:2009-05-12 13:48:45

标签: c# linq-to-sql

  

重复: How to create a dynamic Linq Join extension method

我正在使用System.Linq.Dynamic来创建动态两个查询

var foos = db.Foos.Where(whereClause1);
var bars = db.Bars.Where(whereClause2);

我想加入两个表达式(知道它会给出一个And)。我加入了代码:

var target = from f in foos
             join b in bars on f.SomeId equals b.SomeId                               
             select f;

这会产生预期的结果。有没有办法用字符串中的表达式动态地执行此操作?我有定义关系的元数据,用字符串表示连接会比在代码中表达更简单。我可以在DynamicQueryable中看到其他关键字的实现,也许有人已经编写了类似于现有方法的Join。

1 个答案:

答案 0 :(得分:1)

我在这里找到了解决方法: How to create a dynamic LINQ join extension method