gpt4 book ai didi

c# - 来自 2 个不同 Entity Framework 的 Linq 连接查询

转载 作者:行者123 更新时间:2023-11-30 14:30:23 25 4
gpt4 key购买 nike

我正在使用 2 个 Entity Framework 。一个是项目数据库,另一个是员工数据库。我将项目经理的员工 ID 存储在项目数据库表中,但是当我显示时,我必须从员工数据库中加入员工表以显示员工姓名而不是员工 ID。

如何加入两个实体。

最佳答案

有几种不同的方法可以实现这一点。

您可以在连接来自不同数据库的两个表的其中一个数据库上创建一个 View ,然后它将成为 Entity Framework 中的一个对象。

您还可以首先从要连接的每个表中获取与 EF 断开连接的对象作为内存中对象。显然,在将表/结果拉入内存之前,您希望在数据库端尽可能多地进行过滤。然后你可以加入断开连接的对象

var projects = db1.projects.Where(p=> /** filter here **/).Select(p=> /** select new anonymous type **/).ToList()

var employees = db2.employees.Where(e=> /** filter here **/).Select(e=> /** select new anonymous type **/).ToList()

from p in projects
join e in employee
on p.managerid equals e.employeeid
select new { EmployeeId = e.EmployeeId, Project = p.ProjectName };

关于c# - 来自 2 个不同 Entity Framework 的 Linq 连接查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23140037/

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