0
好吧,我是新來的EF和我有問題抓在篩選結果...動態查詢與實體框架4
我想效仿EF代碼做這樣的事情:
select *
from order o
inner join orderdetail d on (o.orderid = d.orderid)
where d.amount > 20.00
只是不知道如何做到這一點的EF來完成(LINQ到實體語法)
好吧,我是新來的EF和我有問題抓在篩選結果...動態查詢與實體框架4
我想效仿EF代碼做這樣的事情:
select *
from order o
inner join orderdetail d on (o.orderid = d.orderid)
where d.amount > 20.00
只是不知道如何做到這一點的EF來完成(LINQ到實體語法)
如果有多個詳細信息> 20.00,則您的SQL會爲每個訂單提供多個結果。這對我來說似乎是錯誤的。我認爲你想:
var q = from o in Context.Orders
where o.OrderDetails.Any(d => d.Amount > 20.00)
select o;
我會做這樣的:
context.OrderDetails.Where(od => od.Amount > 20).Include("Order").ToList().Select(od => od.Order).Distinct();
我們首先考慮細節,包括訂單,並採取不同的命令。
這給了比他的SQL不同的結果,但我認爲他的SQL是越野車,所以很難說。 – 2010-07-15 12:45:18
這給出了相同的結果。它只返回數量大於20的細節並添加他們的訂單。 – LukLed 2010-07-15 20:46:01