Я ищу везде и не нашел ответа на этот вопрос. Я хочу сгруппировать по интервалам (DateTime, Numeric) в динамическом linq (данные будут динамически упакованы, поэтому я должен использовать динамическое linq)
Предположим, что у нас есть такие данные:
ID|Date|Price
1|2010-11-01|100
2|2010-11-01|120
3|2010-11-02|50
4|2010-12-01|30
5|2010-12-01|220
6|2011-01-01|400
Как сгруппировать эти данные следующим образом
- (группа по дням) следующие группы
->2010-11-01 = 2 elements
->2010-11-02 = 1 elements
->2010-12-01 = 2 elements
->2011-01-01 = 1 elements
- (по месяцам) следующие группы
->2010-11 = 3 elements
->2010-12 = 2 elements
->2011-01 = 1 elements
- (сгруппировать по кварталам) следующие группы
->2010 q.03 = 5 elements
->2011 q.01 = 1 elements
- (по годам) следующие группы
->2010 = 5 elements
->2011 = 1 element
- (Группировка по цене (от 0 до 50)) следующих групп
-> <0-50) = 1 elements
-> <50-100) = 1 elements
-> <100-150) = 2 elements
-> <200-250) = 1 elements
-> <400-450) = 1 elements
- (в идеале это будет группа по цене (от 0-50, от 50-150, от 150-500)) следующих групп
-> <0-50) = 1 elements
-> <50-150) = 3 elements
-> <150-500) = 2 elements
Есть идеи? Я еще раз подчеркиваю - это должно быть DYNAMIC LINQ или, в конце концов, какое-нибудь изощренное лямбда-выражение? Я должен был быть в состоянии "сгруппировать" его по имени столбца, который будет в строке. например,
GroupBy("Date"), GroupBy("Price");