SQL to Entity Framework和LINQ [英] SQL to Entity Framework and LINQ
问题描述
您好,我正在尝试编写此SQL以在具有Entity Framework和C#的程序中使用但没有成功。
Hi, I am trying to write this SQL to be used in a program with Entity Framework and C# without success.
SELECT        Candidates.CandidateId,Candidates.TenantId,Candidates.FirstName,Candidates.MiddleName,Candidates.LastName,Candidates.SecondLastName,Candidates.CandidateStatusId,Candidates.DateofBirth,Candidates.Gender,&
                      Candidates.MaritalStatus,Candidates.Email,Candidates.Mobile,Candidates.Phone,CandidateQualifications.Name AS Type,CandidateStatus.Name AS Status,JobOpeningCandidates.JobOpeningId
FROM          候选人INNER JOIN
                      CandidateQualifications ON Candidates.CandidateQualificationId = CandidateQualifications.CandidateQualificationId INNER JOIN
                      CandidateStatus ON Candidates.CandidateStatusId = CandidateStatus.CandidateStatusId INNER JOIN
                      JobOpeningCandidates ON Candidates.CandidateId = JobOpeningCandidates.CandidateId
WHERE       (JobOpeningCandidates.JobOpeningId = 3)
SELECT Candidates.CandidateId, Candidates.TenantId, Candidates.FirstName, Candidates.MiddleName, Candidates.LastName, Candidates.SecondLastName, Candidates.CandidateStatusId, Candidates.DateofBirth, Candidates.Gender,
Candidates.MaritalStatus, Candidates.Email, Candidates.Mobile, Candidates.Phone, CandidateQualifications.Name AS Type, CandidateStatus.Name AS Status, JobOpeningCandidates.JobOpeningId
FROM Candidates INNER JOIN
CandidateQualifications ON Candidates.CandidateQualificationId = CandidateQualifications.CandidateQualificationId INNER JOIN
CandidateStatus ON Candidates.CandidateStatusId = CandidateStatus.CandidateStatusId INNER JOIN
JobOpeningCandidates ON Candidates.CandidateId = JobOpeningCandidates.CandidateId
WHERE (JobOpeningCandidates.JobOpeningId = 3)
推荐答案
嗨Krupskaia,
Hi Krupskaia,
如果您想通过LINQ的实体框架实现它,请参考以下代码。
If you want to achieve it via entity framework with LINQ, please refer to the following code.
using (var db = new EFDemoContext())
{
var result = from candidates in db.Candidates
join candidateQualifications in db.CandidateQualifications on candidates.CandidateQualificationId equals candidateQualifications.CandidateQualificationId
join candidateStatus in db.CandidateStatus on candidates.CandidateStatusId equals candidateStatus.CandidateStatusId
join jobOpeningCandidates in db.JobOpeningCandidates on candidates.CandidateId equals jobOpeningCandidates.CandidateId
where jobOpeningCandidates.JobOpeningId == 3
select new
{
CandidateId = candidates.CandidateId,
TenantId = candidates.TenantId,
FirstName = candidates.FirstName,
//other filed.
Type = candidateQualifications.Name,
Status = candidateStatus.Name,
JobOpeningId = jobOpeningCandidates.JobOpeningId
};
}
祝你好运,
张龙
这篇关于SQL to Entity Framework和LINQ的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!