日期:2014-05-20  浏览次数:21150 次

linq join on 后多个条件怎么写
两个表用join连接,如:
var test = from o in table1
  join p in table2
  on table1.field1 equals table2.field1
  此处还有一个连接条件怎么写,用&&吗,table1.field2 equals table2.field2
  select o;


------解决方案--------------------
设置好外键就不用join了
比如table1主键,table2外键
dataclasses会自动关联两表
语句上是:table2.table1.id,就是table2可以直接访问主表table1,而不用join,哈哈
------解决方案--------------------
方法1:
2楼说的方法.
方法2:
on new{o.id,0.code} equals new {p.id,p.code}
方法3:
var tmp=from m in table1 from n in table2 where m.id==n.id && m.code==n.code select new{...};
方法4:
你把后面的条件放在where语句里面去.



------解决方案--------------------
var q=from a in table1
join b in table2
on a.field1 equals b.field1
join c in table2
on a.field2 equals c.field2
select a;