var q=(from pd in dataContext.tblProducts
join od in dataContext.tblOrders on pd.ProductID equals od.ProductID
join ct in dataContext.tblCustomers
on new {a=od.CustomerID,b=od.ContactNo} equals new {a=ct.CustID,b=ct.ContactNo}
orderby od.OrderID
select new {
od.OrderID,
pd.ProductID,
pd.Name,
pd.UnitPrice,
od.Quantity,
od.Price,
Customer=ct.Name //define anonymous type Customer
}).ToList();
1条答案
按热度按时间8yparm6h1#
如果使用的表数少于3或4,我们可以使用ef join从多个表中获取数据。
linq联接示例
如果使用的表的数量超过这个数量,我建议您实现一个存储过程并使用它来获取数据。您仍然可以使用ef调用存储过程并将数据绑定到任何自定义dto类。