gpt4 book ai didi

c# - LINQ左连接怎么写

转载 作者:太空宇宙 更新时间:2023-11-03 10:44:13 26 4
gpt4 key购买 nike

 var query = from r in db.Resource
join c in db.ResourceProjectedCapacity on r.ID equals c.ResourceID into ps
from c in ps.DefaultIfEmpty(null)
join p in db.Project on c.ProjectID equals p.ID
select new
{
Capacity = c,
Resource = r,
Project = p
};

我有这个 linq 查询,但它只返回在 ResourceProjectedCapacity 表上有匹配行的资源。我如何获取所有资源,如果它们没有匹配的记录,Capacity 对象为空?

最佳答案

from i in db.Resource
let c = db.ResourceProjectedCapacity.Where(cc => i.id == cc.ResourceID).FirstOrDefault()
let p = db.Project.Where(pp => c.ProjectID == pp.ID).FirstOrDefault()
select new
{
Capacity = C,
Resource = i,
Project = p
}

试试上面的代码

关于c# - LINQ左连接怎么写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24119263/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com