你如何在LINQ中编写交叉连接?

时间:2012-05-20 03:56:45

标签: linq

我的应用程序中有一个进程,它返回两个不同的对象列表。两个列表中的对象属于同一类型。我需要将两个列表交叉连接在一起以形成一个集成列表。如果它是SQL,它就是这样的:

SELECT A.KEY, A.DATA AS DATA1, B.DATA AS DATA2
FROM TABLE1 AS A
CROSS JOIN TABLE2

这是纯LINQ,因为数据在实际通用List<>中返回。集合。

此操作的LINQ语法是什么?

1 个答案:

答案 0 :(得分:1)

var res = from t1 in table1
          from t2 in table2
          select new
          {
              KEY = t1.KEY,
              DATA1 = t1.DATA,
              DATA2 = t2.DATA,
          };