Customers, Order를 참조하는 Orders 및 Customers 테이블과 Order 클래스 및 Customer 테이블이 두 개 있습니다.Linq .Where()에 열에 람다 식 추가
내가 주문 및 고객 모두를위한 경우() A 조건 Linq를 수신하는 방법 쓰고 싶은 : 심지어 MSDN에서이 주제와 관련 기사에 SO 답변을 많이 읽고
void ProcessOrders(Expression<Func<Order, bool>> orderCondition,
Expression<Func<Customer, bool>> customerCondition)
{
var q = Database.Query<Order>().Where(orderCondition);
q = q.Where(o => o.Customer APPLY customerCondition); // how ?
... process records in q ...
}
를, 내가 보인다 Order.Customer 속성에서 고객 조건을 적용하는 방법을 파악할 수 없습니다.
(DB/ORM은 Oracle/DevExpress이지만 일반적인 솔루션으로는 문제가 없으므로 태그에 포함시키지 않았습니다. 답변이 특정 DB 또는 ORM으로 제한되어 있다면 언급하십시오)
JOIN을 제안 해 주셔서 감사합니다. Linq는 때때로 DB 지식을 흐리게 보입니다. 그러나 DevExpress는 조인을 지원하지 않으므로 내 솔루션은 customer.Where() 쿼리로 구성되며 주문은 해당 쿼리의 .Contains()를 사용하여 제한됩니다. 추악한 SQL,하지만 작동하는 것. – devio