码迷,mamicode.com
首页 > Web开发 > 详细

asp.net ef5 left join 的实现

时间:2014-06-18 12:16:35      阅读:283      评论:0      收藏:0      [点我收藏+]

标签:style   ext   color   string   os   rgb   

最近在网上查找了很多的ef5实现left join的方法,很遗憾没有找到满意的结果,经过自己的研究终于发现了点眉目,所以分享一下



EF5: var x = ef.SYS_MODULE.GroupJoin(ef.SYS_ROLEMODULES, m => m.MKID, n => n.MKID, (w, c) => new { A = c, v = w });


说明:上面是用表SYS_MODULE left join 表 SYS_ROLEMODULES 用表SYS_MODULE.MKID 和 SYS_ROLEMODULES.MKID 关联

查询的结果放到标红的位置;但不知道为什么会自动产生C1,C2


x.ToString()的结果是:

SELECT "Project1"."MKID"  AS "MKID",
       "Project1"."C1"    AS "C1",
       "Project1"."MKMC"  AS "MKMC",
       "Project1"."C2"    AS "C2",
       "Project1"."JSID"  AS "JSID",
       "Project1"."MKID1" AS "MKID1"
  FROM (SELECT "Extent1"."MKID" AS "MKID",
               "Extent1"."MKMC" AS "MKMC",
               1 AS "C1",
               "Extent2"."JSID" AS "JSID",
               "Extent2"."MKID" AS "MKID1",
               CASE
                 WHEN ("Extent2"."JSID" IS NULL) THEN
                  NULL
                 ELSE
                  1
               END AS "C2"
          FROM "A1"."SYS_MODULE" "Extent1"
          LEFT OUTER JOIN "A1"."SYS_ROLEMODULES" "Extent2"
            ON ("Extent1"."MKID" = "Extent2"."MKID")
           AND (‘1‘ = "Extent2"."MKID")) "Project1"
 ORDER BY "Project1"."MKID" ASC, "Project1"."C2" ASC


x.ToList()的结果是标红位置的集合;



asp.net ef5 left join 的实现,布布扣,bubuko.com

asp.net ef5 left join 的实现

标签:style   ext   color   string   os   rgb   

原文地址:http://blog.csdn.net/sunyuyong521/article/details/31389495

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!