我正在尝试将这个有效的 SQL 查询转换为 LINQ 查询 (EF)
但是在LINQ查询中我无法进入类别数据表。 这是我的工作 SQL 查询:
SELECT cosmetics.brand, cosmetics.product, cosmetics.size, cosmetics.price, cosmetics.sale_type, cosmetics.description, cosmetics.date, cosmetics.company_id, cosmetics.category, cosmetics.[male-female], company.company_site
FROM cosmetics INNER JOIN company ON cosmetics.company_id = company.company_id
WHERE (cosmetics.date >= GETDATE())
AND (cosmetics.[male-female] = N'female')
AND (cosmetics.category = N'cosmetics_perfumes')
ORDER BY cosmetics.brand, cosmetics.product, cosmetics.size, cosmetics.price"
这工作得很好:
var female = (from c in db.cosmetics
.Where(v => v.date > DateTime.Now)
.Where(d => d.male_female == "female")
.Include("company")
select c);
return View(female.ToList());
最佳答案
var q =
from cos in oc.cosmetics
join com in oc.company on cos.company_id equals com.company_id
where cos.date >= DateTime.Now
&& cos.male_female == "female"
&& cos.category == "cosmetics_perfumes"
orderby cos.brand, cos.product, cos.size, cos.price
select new { cos, com.company_site };
关于c# - 无法访问转换查询中的表(从纯 SQL 到 LINQ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6095058/