【发布时间】:2020-06-06 21:42:57
【问题描述】:
我有 SQL Query 并尝试使用 LINQ,因为如果 EF.有人可以看看它告诉我我的错误在哪里,好吗? SQL 查询正在运行,但 LINQ 不返回任何数据。基本上有两个表 A 和表 B。我想加入 A\B 即(带我数据存在于表 A 中但不在表 B 中)
SqlQueryText = " SELECT A.EmployeeID" +
" FROM EmployeeCourseModels A " +
" LEFT JOIN EmployeeTrainingModels B " +
" ON A.EmployeeID = B.EmployeeID and a.CourseID = B.CourseID" +
" WHERE(B.CourseID is null and B.EmployeeID is null) AND A.CourseID = " + courseID;
我试过了,但没有用。从 SQL 表中可以看出,当我加入两个表时,我需要两个键值来匹配。
var ReqList = from course in employeeCourseRepository.EmployeeCourseList
join training in employeeTrainingRepository.EmployeeTrainingList
on new { c = course.CourseID, e = course.EmployeeID } equals new { c = training.CourseID, e = training.EmployeeID }
where (course.CourseID == Blist.CourseID)
select new { empID = course.EmployeeID };
【问题讨论】:
-
尝试在连接中只放一个键,修改的是两个项目,其中 ((course.CourseID == Blist.CourseID) && (course.CourseID == training.CourseID))