У меня есть запрос LINQ, который я хочу генерировать динамически:
var groupData =
from l in data
group l by l.Field1 into field1Group
select new MenuItem()
{
Key = field1Group.Key,
Count = field1Group.Count(),
Items = (from k in field1Group
group k by k.Field2 into field2Group
select new MenuItem()
{
Key = field2Group.Key,
Count = field2Group.Count()
}).ToList()
};
Конечная цель состоит в том, чтобы иметь возможность динамически группировать данные по любой комбинации полей без ограничения для вложенных запросов.
Я могу дойти до первого уровня, но я борюсь с вложенными подзапросами:
string field1 = "Field1";
string field2 = "Field2";
var groupDataD =
data.
GroupBy(field1, "it").
Select("new ( it.Key, it.Count() as Count )");
Возможно ли это с цепочкой динамического LINQ?Или есть лучший способ добиться этого?