首页 新闻 赞助 找找看

LinQ Join加 where提示错误

0
悬赏园豆:15 [已关闭问题] 关闭于 2014-01-02 20:53

var p=from a in addresses 

join b in person_addresses on a.Id equals b.Address_id into b

where b.Address_id==2
select a
出现错误提示:
“System.Collections.Generic.IEnumerable<LINQPad.User.Test_person_address>”不包含“Address_id”的定义,并且找不到可接受类型为“System.Collections.Generic.IEnumerable<LINQPad.User.Test_person_address>”的第一个参数的扩展方法“Address_id”(是否缺少 using 指令或程序集引用?)
fredxiong的主页 fredxiong | 初学一级 | 园豆:178
提问于:2014-01-01 22:37
< >
分享
所有回答(4)
0

不明白你这句LINQ,画蛇添足吧。

既然a.id=b.address_id

var query = from a in addresses

                  where a.id=2

      select a

这样不就行了。除非你需要Select 两个表中的字段,如果只要第一个表中的字段,上面这样就够了。

另外,如果要像你这样写

var p=from a in addresses 

join b in person_addresses on a.Id equals b.Address_id  //into b  这部分没用啊

where b.Address_id==2
select a
 
into b 没啥用的,不知道你做啥。
爱编程的大叔 | 园豆:30839 (高人七级) | 2014-01-01 22:44

是要两个表中都存在的才筛选出来。

去掉//into b

错误信息一样

支持(0) 反对(0) fredxiong | 园豆:178 (初学一级) | 2014-01-01 22:59
0

楼上是正解的,不可能还出现一样的错误提示的

Yu | 园豆:12980 (专家六级) | 2014-01-02 09:14
0

没有上下文,不好定位。

看错误信息,是你的实体未包含属性,检查属性的写法吧。

幻天芒 | 园豆:37175 (高人七级) | 2014-01-02 13:22
0

var p= from a in db.addresses
from b in person_addresses where a.id == b.address_id &&
b.person_id == personId
select a;

fredxiong | 园豆:178 (初学一级) | 2014-01-02 20:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册