【发布时间】:2017-12-18 11:57:40
【问题描述】:
员工
Empid |员工姓名
1-------------罗恩
2------------约翰
部门
胆怯|部门名称 |状态| Empid
1---------------账户--------- 1------------1
2---------------HR----------------1------------1
3---------------财务----------1---------2
4---------------设计-----------1---------2
这里我有两张表 Employee 和 Department。一名员工可以在不同的部门,例如 empid = 1 在两个部门(即帐户)和 hr 类似地 empid = 2 在两个部门(即财务和设计)。
现在,例如,由于 empid = 1 被插入到 depid = 1 和 depid = 2,但我试图获得 depid = 2,这是 empid = 2 的最后插入行。同样,对于 empid = 2,depid = 4 的部门的最后一行。
现在,问题是我的 LINQ 连接没有提供所需的输出。
由于我对 Linq 非常陌生,非常感谢您的帮助。谢谢
下面是我的 LINQ 加入
var empDepList = (from D in db.Department.Where(x => x.Status == 1)
join E in db.Employee on D.Empid equals E.Empid
select new
{
D.DepartmentName, E.EmployeeName
}).ToList();
【问题讨论】:
-
如何通过你的数据(哪一列)知道最后插入了什么?
-
@GiladGreen DepId = 2 和 DepId = 4。
-
但是如果不是按照表格中的顺序你怎么知道呢?
-
您现在应该忽略 LINQ。转到您的 SSMS 或您使用的任何工具,然后从那里运行您的查询。如果您可以从那里获得输出,那么您可以将其转换为代码。如果您查看之前的 cmets,实质上每个人都在告诉您检查您的数据模型。您是否要获取员工所在的当前部门?
-
您好,欢迎来到 Stack Overflow,请花点时间通过 welcome tour 了解您在此处的方式(并获得您的第一个徽章),阅读如何创建 Minimal, Complete, and Verifiable example并检查How to Ask Good Questions,这样您就有机会获得反馈和有用的答案。
标签: c# asp.net-mvc linq