我发布了一些关于在一个热切的加载查询中进行过滤的问题,我猜EF不支持在Include
语句中进行过滤,所以我提出了这个问题。实体框架中的LINQ投影
我想执行一个简单的查询,其中通过sku编号获得ChildProdcut
,并且它为PriceTiers
筛选IsActive
。
Dim ChildProduct = ChildProductRepository.Query.
Where(Function(x) x.Sku = Sku).
Select(Function(x) New With {
.ChildProduct = x,
.PriceTiers = x.PriceTiers.
Where(Function(y) y.IsActive).
OrderBy(Function(y) y.QuantityStart)
}).Select(Function(x) x.ChildProduct).Single
有没有更有效的方法呢?我在正确的轨道上?它确实有效。
我真的不明白的另一件事是为什么这个工作?你是否需要加载一个对象图,EF会接受它,并且看到这些集合属于ChildProduct,即使它们属于匿名类型?
此外,格式化长LINQ表达式的标准是什么?
你会碰巧有这样的例子吗? – Sam 2011-04-17 04:25:26