gpt4 book ai didi

c# - 根据满足的较低级别标准获取顶级实体

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

我有以下数据库设置。我希望完成的是在 Worker 选项卡中搜索一个 worker 并返回结果用户将根据图表归入的所有 BusinessAreas。我希望在 Lambda 表达式中完成此操作并返回顶级 BusinessArea 实体。如果需要,我可以让工作人员通过一系列流程恢复到我想要的级别,但这需要我遍历不同的级别,直到我达到最高级别。

enter image description here

最佳答案

听起来您想要这样的东西,以查找单个用户的业务领域:

var results = WFE.BusinessAreas
.Where(ba => ba.Processes
.Any(p => p.WorkerProcesses
.Any(wp => wp.UserId == "pmarshall")));

或者在查询语法中:

var results =
from ba in WFE.BusinessAreas
where ba.Processes.Any(p => p.WorkerProcesses.Any(wp => wp.UserId == "pmarshall"))
select ba;

或者:

var results =
from ba in WFE.BusinessAreas
from p in ba.Processes
from wp in p.WorkerProcesses
where wp.UserId == "pmarshall"
select ba;

如果你想找到所有用户的所有区域,你会想做这样的事情:

var results =
(from ba in WFE.BusinessAreas
from p in ba.Processes
from wp in p.WorkerProcesses
select new { ba, wp.UserId })
.Distinct()
.ToLookup(x => x.UserId, x => x.ba);

然后您可以使用 results["pmarshall"] 访问单个用户的结果。

关于c# - 根据满足的较低级别标准获取顶级实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18602393/

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