linq查询将3个表连接到一个表中

时间:2012-06-18 05:20:18

标签: c# entity-framework

我有一个名为M1的主表,它由三个单独的表T1,T2和T3组成。

我需要使用他们的ID将3个表连接到M1并显示他们的名字 为此,我使用以下查询:

 var query= (from i in dbContext.M1
             join j in dbContext.T1 on i.Mt1_id  equals j.Mt1_id
             join l in dbContext.T2 on i.Mt2_id equals l.Mt2_id
             join s in dbContext.T3 on i.Mt3_id equals s.Mt3_id
             where i.Mid >= 1
             select new
             {
               a=j.name,
               b=l.name,
               c=s.name
             }).ToArray();

我使用过这种方式,但我收到一条错误消息,指出“Type inference failed in call to Join

有人可以告诉我哪里出错了吗?

1 个答案:

答案 0 :(得分:1)

请检查列的数据类型以避免“调用加入时类型推断失败”异常