在EF中参数化多个联接

时间:2019-07-10 12:44:18

标签: c# entity-framework

我想在Entity Framework中进行通用联接,以便我可以传递实体和联接条件。它应该能够根据需要进行尽可能多的联接。例如,这里我有两个联接,

var result = (from outer in dbSet
              join inner1 in context.entity on outer.x1 equals inner1.id
              join inner2 in context.entity on outer.x2 equals inner2.id
              select new
              {
                  id = outer.id,
                  inner1,
                  inner2
              }
              )
             .ToList()

context.entity将是相同的,因此我不需要对其进行参数化。我尝试创建带有签名GetItemsWithTranslations<T>(DbSet<T> dbSet, List<Expression<Func<T, string>>> dbSetSelectors) where T:class的实用程序方法,并尝试对多个连接使用流利的语法,但是由于每个连接之后,下一个连接需要上一个连接的组合输出签名,所以我无法使其正常工作。 / p>

0 个答案:

没有答案