Динамический запрос с Entity Framework 4 - PullRequest
0 голосов
/ 15 июля 2010

Хорошо, я новичок в EF, и у меня возникают проблемы с фильтрацией результатов ...

Я хотел бы эмулировать код ef, чтобы сделать что-то вроде:

select * 
from order o  
    inner join orderdetail d on (o.orderid = d.orderid)
where d.amount > 20.00

просто не уверен, как это будет сделано в EF (синтаксис linq to entity)

Ответы [ 2 ]

1 голос
/ 15 июля 2010

Ваш SQL дает несколько результатов на заказ, если есть несколько деталей> 20.00. Это кажется мне неправильным. Я думаю ты хочешь:

var q = from o in Context.Orders
        where o.OrderDetails.Any(d => d.Amount > 20.00)
        select o;
0 голосов
/ 15 июля 2010

Я бы сделал это так:

context.OrderDetails.Where(od => od.Amount > 20).Include("Order").ToList().Select(od => od.Order).Distinct();

Сначала мы берем детали, включаем заказы и принимаем отдельные заказы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...