Entity Framework 多对多查询不会写

现在要找出价格小于80的所有的订过的客户名称:
SELECT Orders.UserName
FROM OrderLine LEFT OUTER JOIN
Orders ON OrderLine.OrderID = Orders.OrderID LEFT OUTER JOIN
Products ON OrderLine.ProductID = Products.ProductID
WHERE (Products.Price < 80)
但是怎么写entity 查询呢?
var query = en.Products.Where(p=>p.Price < 80) ?? 后面怎么接啊?
[解决办法]
我觉得Orderline也要映射吧。
[解决办法]
var query=from u in en.Products select u.OrderLine.Orders.UserName
var query=from ol in OrderLine
join o in Orders
on ol.OrderID equals o.OrderID into left1
from o in left1.DefalutIfEmpty()
join p in Products
on ol.ProductID equlas p.ProductID into left2
from p in left2.DefalutIfEmpty()
where p.price<80
select o==null?"":o.UserName;
var query = from oi in context.OrderItems
join o in context.Orders on oi.OrderId equals o.OrderId
join p in context.Products on oi.ProductId equals p.ProductId
where p.ProductId == 310
select o;
[解决办法]
多对多肯定要用中间表的。