c#linq选择对象列表查看另一个对象列表

c#linq选择对象列表查看另一个对象列表,c#,linq,C#,Linq,我有一个对象列表(1),里面有另一个对象列表(2)。我想从第一个列表中选择一些对象(1),在另一个列表(2)中查找 我的课程是这样的: class objects(1) { public int Id { set; get;} List<Objects(2)> Objects(2) { set; get;} } class objects(2) { public int Id { set; get;} DateTime? Date { set; get

我有一个对象列表(1),里面有另一个对象列表(2)。我想从第一个列表中选择一些对象(1),在另一个列表(2)中查找

我的课程是这样的:

class objects(1)
{
    public int Id { set; get;}
    List<Objects(2)> Objects(2) { set; get;}
}
class objects(2)
{
    public int Id { set; get;}
    DateTime? Date { set; get;}
}
类对象(1)
{
公共int Id{set;get;}
列出对象(2){set;get;}
}
类对象(2)
{
公共int Id{set;get;}
日期时间?日期{set;get;}
}
所以我想选择所有对象(1),其中列表对象(2){set;get;}列表中的所有值都有DateTime?日期!=空。

请尝试以下操作:

List<Object1> listOfObjects1 = ...;
List<Object1> items = listOfObjects1.Where(x => x.Objects2 != null && !x.Objects2.Any(y => !y.Date.HasValue)).ToList();
listOfObjects1=。。。;
List items=listOfObjects1.Where(x=>x.Objects2!=null&&!x.Objects2.Any(y=>!y.Date.HasValue)).ToList();