今天遇到了这个问题,在网上查了资料,大部分都推荐了这2种方法
在linq 的join后面加上多个条件。
第一种是直接用重新from
from u in table1
from s in table2
where u.id == s.id || u.id == s.sid
select new { };
他生成的sql 语句就是
WHERE [Extent1].[ShopId] IN ([Extent2].[ShopId],[Extent2].[HeadShopId]) 这样的
还有一种用匿名类
var da = from u in table1
join s in table2 on new { ss1 = u.id, ss = u.id } equals new { ss1 = s.id, ss =s.sid }
select new { };
这样生成的sql语句就是 And
使用匿名类时注意2个条件的数据类型要一一对应