c# LINQ Take 用于内部查询

c# LINQ Take for internal query

我有这样的东西

DbContext.Level1.GroupBy(level1=> level1.field1, (field1, list1)=>
 new Level1{ 
    field1 = field1,
    level2List = list1.GroupBy (level2 = > level2.field2, (field2, list2) =>
       new Level2 {
          field2 = field2}
   ).Take(takeValue)
 }
).ToList()

takeValue 可以是 10、20、30。但有时我需要 select 所有可能的项目。是否可以通过某种方式让 Take 获取所有记录?

我认为最可读的解决方案是将 Int32.MaxValue 插入 takeValue。如果它超过实际值的数量,它将检索整个集合。