Je recherche partout et je n'ai pas trouvé d'anwser pour cette question. Je veux groupe par intervalles (DateTime, numérique) dans LINQ dynamique (les données seront crated dynamiquement si je dois utiliser LINQ dynamique)Linq dynamique - Grouper par intervalle (DateTime, Numeric)
laisse supposer que nous avons ces données:
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
Comment obtenir ces données groupées par comme celui-ci
- (Groupe par jour) groupes suivants
->2010-11-01 = 2 elements
->2010-11-02 = 1 elements
->2010-12-01 = 2 elements
->2011-01-01 = 1 elements
- (groupe par mois) les groupes suivants
->2010-11 = 3 elements
->2010-12 = 2 elements
->2011-01 = 1 elements
- (Groupe par trimestre) Les groupes suivants
->2010 q.03 = 5 elements
->2011 q.01 = 1 elements
- (Groupe par année) groupes suivants
->2010 = 5 elements
->2011 = 1 element
- (Groupe par Prix (0, chaque 50)) suivant groupes
-> <0-50) = 1 elements
-> <50-100) = 1 elements
-> <100-150) = 2 elements
-> <200-250) = 1 elements
-> <400-450) = 1 elements
- (idéalement, il serait Groupe par Prix (0-50, 50-150, de 150-500)) groupes suivants
-> <0-50) = 1 elements
-> <50-150) = 3 elements
-> <150-500) = 2 elements
Une idée? Je souligne à nouveau - il doit être LINQ DYNAMIQUE ou éventuellement une expression lambda sophistiquée? Je devrais pouvoir le "grouper" par le nom de colonne qui sera dans la chaîne. par exemple.
GroupBy("Date"), GroupBy("Price");