linq如何多表查询?请赐教

bubiaiyou 2009-11-08 12:42:40
刚刚自学了linq的基本的查询,感觉还是不错, 因为要赶时间做项目,遇到了linq多表查询,找了半天资料,我试了下,

可是有了很多错误,我把两张表放进一个dbml文件内,有主外键关系,下一步就不会了,拜托,哪位大哥会呢,这里的大哥都挺好的,就一个感觉,嘿嘿

里面有个170多个错误,看了看,好像大多数都是已定义,或是冲突什么的 ,我根本看不懂


...全文
158 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bubiaiyou 2009-11-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yezie 的回复:]
设aa表的a1主键,tt表t2外键,还有t3等字段
from m in aa
                                    where id = 123
                                    select new
                                    {
                                      id = m.a1,
                                      t3 = m.tt.t3 //设置外键了就能这样取值,自动join
                                    }
[/Quote]
能用了,还是得把所有的表放在一个设计器里,自己折磨自己,

还得好好的学习
zhubo_1117 2009-11-09
  • 打赏
  • 举报
回复
如梦大哥正解!!!
bubiaiyou 2009-11-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yezie 的回复:]
设aa表的a1主键,tt表t2外键,还有t3等字段
from m in aa
                                    where id = 123
                                    select new
                                    {
                                      id = m.a1,
                                      t3 = m.tt.t3 //设置外键了就能这样取值,自动join
                                    }
[/Quote]
这个方法不能用
wuyq11 2009-11-08
  • 打赏
  • 举报
回复
LINQ使用JOIN
var joinquery = from o in OrderTable.Select()
join c in CustomerTable.Select() on o.CustomerID equals c.CustomerID into x
from xx in x.DefaultIfEmpty(
new Customer() { CustomerID = "UnKnown", CompanyName = "UnKnown Company" })
join e in EmployeeTable.Select() on o.EmployeeID equals e.EmployeeID into y
from yy in y.DefaultIfEmpty(
new Employee() { EmployeeID = -1, Name = "UnKnown", City = City.北京 })
select new
{
OrderInfo = o,
CustomerInfo = xx,
EmployeeInfo = yy
};

LINQ JOIN
yezie 2009-11-08
  • 打赏
  • 举报
回复
设aa表的a1主键,tt表t2外键,还有t3等字段
from m in aa
where id = 123
select new
{
id = m.a1,
t3 = m.tt.t3 //设置外键了就能这样取值,自动join
}

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧