我不能使用内连接和左连接

时间:2011-03-19 15:55:10

标签: entity-framework linq-to-entities

我在后续查询中使用了内连接和左连接,但结果只是在PostTags和PostXTags之间保持连接。 我的问题是什么?

from pt in db.PostTags
                   join xp in
                       (
                           from x in db.PostXTags
                           join p in db.Posts
                           on x.PostID equals p.PostID
                           where p.PostID == postID
                           select x
                           )
                   on pt.PostTagID equals xp.PostTagID into g
                   from ptxp in g.DefaultIfEmpty()
                    where (pt.BlogID == blogID && pt.Type == PostTags.Type.Category)
                   select pt;

1 个答案:

答案 0 :(得分:0)

当两个表相关联时,EF使用INNER JOIN 1< - > *(或1 - 1) 在其他情况下,通常使用LEFT OUTER JOIN 如果实体之间没有关联,也将使用LEFT OUTER JOIN。