2012-03-05 83 views
1

我有一个与一对多关系的实体框架模型:Client实体可能有很多Orders在实体框架中加载相关实体:如何过滤哪些实体应该加载?

我想加载Client实体和所有Orders由客户端制作,但在我的数据库中标记为Obsolete的除外。

不幸的是,我不能使用Orders.Load()因为它加载的所有订单,不接受任何谓语,所以我不能只是写client.Orders.Load(o => !o.Obsolete)

那么,我怎么能只加载最新的订单?

回答

2

使用带有投影:

var client = context.Client.Select(c => new 
    { 
     Client = c, 
     Orders = c.Orders.Where(o => !o.Obsolete) 
    });