我目前正在一个项目中使用 Linq-to-SQL 来避免使用存储过程。我几乎完成了避免所有存储过程,但我有一个 T-SQL 查询,我发现它很难转换为 Linq。
任何人都可以帮助我进行转换吗?
select
EM.EmployerID, EM.EmployerName, AD.City, AD.County, JR.InstanceValue
from
JobResults JR
inner join
Employers EM on JR.EmployerName = EM.EmployerName
inner join
Addresses AD on EM.AddressID = AD.AddressID
where
JR.IsPremium = 1
and JR.FieldName = 'Job Title'
group by
EM.EmployerID, EM.EmployerName, AD.City, AD.County, JR.InstanceValue
更新
这是我尝试过的:
var query = (from jr in database.JobResults
join em in database.Employers
on jr.EmployerName equals em.EmployerName
join ad in database.Addresses
on em.AddressID equals ad.AddressID
where jr.FieldName == "Job Title" && jr.IsPremium == true
select new { jr.JobID, em.EmployerID, em.EmployerName, ad.City, ad.County, jr.InstanceValue }).GroupBy(p => new { p.EmployerID, p.EmployerName, p.City, p.County, p.InstanceValue, p.JobID }).ToList();
我坚持使用Group By
多个连接查询的子句