首页 新闻 搜索 专区 学院

linq Include的理解路过的大侠 帮忙看下!

0
悬赏园豆:10 [已解决问题] 解决于 2013-07-01 09:29

代码:

 DataFac.LEDEntities.Users.Include("PowerGroups").Include("Account").Where(u => u.UserID == CommonPub.UserId).First();

我理解的意思是

select top 1, * from Users a,
             PowerGroups b,
             Account c,
          where a.UserID=b.UserID
            and a.UserID=c.UserID
            and a.UserID="参数"   

但是Account里面没有这个userID这个字段。还是我理解错了?

s_p的主页 s_p | 菜鸟二级 | 园豆:295
提问于:2013-06-28 15:00
< >
分享
最佳答案
0

这两个Include是加载导航属性,UserID不一定是Account的外键。也可能是AccountID是User的外键。

收获园豆:5
写代码的小2B | 老鸟四级 |园豆:4346 | 2013-06-28 17:42

哦 能写下他生成sql吗?就像我上面的那钟格式 谢谢

s_p | 园豆:295 (菜鸟二级) | 2013-06-30 14:21

@s_p:   你可以断点调试进去,查看一下自动生成的sql

Yu | 园豆:12944 (专家六级) | 2013-06-30 21:01

@Yu: 恩我知道 了 谢谢

s_p | 园豆:295 (菜鸟二级) | 2013-07-01 09:29
其他回答(2)
0

是 User 的 UserID

where 是作用在 DataFac.LEDEntities.Users,不是对 Account 的

 
收获园豆:3
Yu | 园豆:12944 (专家六级) | 2013-06-28 17:31

哦 能写下他生成sql吗?就像我上面的那钟格式 谢谢

支持(0) 反对(0) s_p | 园豆:295 (菜鸟二级) | 2013-06-30 14:20
0
select top 1, * from Users a,
             PowerGroups b,
             Account c,
          where  a.UserID="参数"   
我觉得就这样吧
收获园豆:2
Invictus | 园豆:76 (初学一级) | 2013-06-30 15:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册