LinQ的关联查询的介绍

时间:2021-04-16

  LinQ的关联查询:

  var q =
(from ar in db.Articles
join c in db.Categories on ar.ParentId
equals c.Id
join sc in db.Categories on ar.SubId equals sc.Id into scate
from sc in scate.DefaultIfEmpty()
where ar.IsPrivate == false
orderby ar.CreateTime descending
__select new
{
article = ar,
pcate = c,
scate = sc
  }).Take(3);

defaultifempty()方法就可以实现左连接,并且左右连接都是外连接的一种。
var result = from s in 集合或表
join t in 另一个集合或表 on s.id equals t.id into u
from v in u.defaultifempty()
select new { 需要的字段或值}。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章