use*_*433 6 linq sql-server linq-to-entities
我已经搜索过SO并且无法为此找到可行的解决方案.我只想弄清楚Linq to Entities中多个内连接的语法是什么.谢谢
Jon的答案可行,但是使用LINQ to Entities连接的 IMHO 通常是错误的,因为它复制了模型中的代码.我可以在L2E中以更简单的方式重写Jon的查询:
var query = from customer in db.Customers
from order in customer.Orders
from product in order.Products
from info in product.Info
select new
{
customer.Name,
info.BriefDescription
}
Run Code Online (Sandbox Code Playgroud)
这大约是打字的50%和重复代码的0%.请考虑您的关系已在数据库和模型中定义.您是否真的想在您编写的每个查询中再次复制它们,并在重构模型时中断查询?
好吧,我不太了解LINQ to Entities,但正常的LINQ语法是:
var query = from customer in db.Customers
join order in db.Orders on customer.ID equals order.ID
join product in db.Products on order.ProductID equals product.ID
join info in db.Info on product.InfoID equals info.ID
select new { customer.Name, info.BriefDescription };
Run Code Online (Sandbox Code Playgroud)
(即只有几个join条款).
现在我怀疑你已经尝试过了 - 如果是的话,出了什么问题?
| 归档时间: |
|
| 查看次数: |
16689 次 |
| 最近记录: |