LINQ to Entities - 过滤导航属性的属性

时间:2015-12-01 18:29:01

标签: c# entity-framework linq

我有一个类PO,它与导航属性(Shipment)之间的关系为1-0..1。我想使用LINQ to Entities返回a)实际有货的所有PO的列表(它不是null),b)具有特定的过去14天内DateShipped内的日期属性(Shipment)。我怎么能做到这一点?

澄清:PO类 - > Shipment类(导航属性) - > DateShipped财产。我希望对DateShipped进行过滤,但我的查询实际上是在父PO类上。

简化为:

public class PO {
    // misc
    public virtual Shipment Shipment { get; set; }
}

public class Shipment {
    // misc
    public virtual DateTime DateShipped { get; set; }
}

1 个答案:

答案 0 :(得分:1)

from p in context.PO
where p.Shipment != null && p.Shipment.DateShipped >= DateTime.Now.AddDays(-14)
select p

您可能还需要仅考虑date部分,无论是您需要弄清楚的一些细节。